YES 11.791 H-Termination proof of /home/matraf/haskell/eval_FullyBlown_Fast/FiniteMap.hs
H-Termination of the given Haskell-Program with start terms could successfully be proven:



HASKELL
  ↳ LR

mainModule FiniteMap
  ((lookupFM :: Ord b => FiniteMap b a  ->  b  ->  Maybe a) :: Ord b => FiniteMap b a  ->  b  ->  Maybe a)

module FiniteMap where
  import qualified Maybe
import qualified Prelude

  data FiniteMap a b = EmptyFM  | Branch a b Int (FiniteMap a b) (FiniteMap a b


  instance (Eq a, Eq b) => Eq (FiniteMap b a) where 
   
(==) fm_1 fm_2 sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2

  fmToList :: FiniteMap b a  ->  [(b,a)]
fmToList fm foldFM (\key elt rest ->(key,elt: rest) [] fm

  foldFM :: (b  ->  c  ->  a  ->  a ->  a  ->  FiniteMap b c  ->  a
foldFM k z EmptyFM z
foldFM k z (Branch key elt _ fm_l fm_rfoldFM k (k key elt (foldFM k z fm_r)) fm_l

  lookupFM :: Ord b => FiniteMap b a  ->  b  ->  Maybe a
lookupFM EmptyFM key Nothing
lookupFM (Branch key elt _ fm_l fm_rkey_to_find 
 | key_to_find < key = 
lookupFM fm_l key_to_find
 | key_to_find > key = 
lookupFM fm_r key_to_find
 | otherwise = 
Just elt

  sizeFM :: FiniteMap b a  ->  Int
sizeFM EmptyFM 0
sizeFM (Branch _ _ size _ _) size


module Maybe where
  import qualified FiniteMap
import qualified Prelude



Lambda Reductions:
The following Lambda expression
\keyeltrest→(key,elt: rest

is transformed to
fmToList0 key elt rest = (key,elt: rest



↳ HASKELL
  ↳ LR
HASKELL
      ↳ CR

mainModule FiniteMap
  ((lookupFM :: Ord b => FiniteMap b a  ->  b  ->  Maybe a) :: Ord b => FiniteMap b a  ->  b  ->  Maybe a)

module FiniteMap where
  import qualified Maybe
import qualified Prelude

  data FiniteMap b a = EmptyFM  | Branch b a Int (FiniteMap b a) (FiniteMap b a


  instance (Eq a, Eq b) => Eq (FiniteMap b a) where 
   
(==) fm_1 fm_2 sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2

  fmToList :: FiniteMap a b  ->  [(a,b)]
fmToList fm foldFM fmToList0 [] fm

  
fmToList0 key elt rest (key,elt: rest

  foldFM :: (c  ->  b  ->  a  ->  a ->  a  ->  FiniteMap c b  ->  a
foldFM k z EmptyFM z
foldFM k z (Branch key elt _ fm_l fm_rfoldFM k (k key elt (foldFM k z fm_r)) fm_l

  lookupFM :: Ord b => FiniteMap b a  ->  b  ->  Maybe a
lookupFM EmptyFM key Nothing
lookupFM (Branch key elt _ fm_l fm_rkey_to_find 
 | key_to_find < key = 
lookupFM fm_l key_to_find
 | key_to_find > key = 
lookupFM fm_r key_to_find
 | otherwise = 
Just elt

  sizeFM :: FiniteMap b a  ->  Int
sizeFM EmptyFM 0
sizeFM (Branch _ _ size _ _) size


module Maybe where
  import qualified FiniteMap
import qualified Prelude



Case Reductions:
The following Case expression
case compare x y of
 EQ → o
 LT → LT
 GT → GT

is transformed to
primCompAux0 o EQ = o
primCompAux0 o LT = LT
primCompAux0 o GT = GT



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
HASKELL
          ↳ IFR

mainModule FiniteMap
  ((lookupFM :: Ord b => FiniteMap b a  ->  b  ->  Maybe a) :: Ord b => FiniteMap b a  ->  b  ->  Maybe a)

module FiniteMap where
  import qualified Maybe
import qualified Prelude

  data FiniteMap a b = EmptyFM  | Branch a b Int (FiniteMap a b) (FiniteMap a b


  instance (Eq a, Eq b) => Eq (FiniteMap a b) where 
   
(==) fm_1 fm_2 sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2

  fmToList :: FiniteMap a b  ->  [(a,b)]
fmToList fm foldFM fmToList0 [] fm

  
fmToList0 key elt rest (key,elt: rest

  foldFM :: (a  ->  b  ->  c  ->  c ->  c  ->  FiniteMap a b  ->  c
foldFM k z EmptyFM z
foldFM k z (Branch key elt _ fm_l fm_rfoldFM k (k key elt (foldFM k z fm_r)) fm_l

  lookupFM :: Ord a => FiniteMap a b  ->  a  ->  Maybe b
lookupFM EmptyFM key Nothing
lookupFM (Branch key elt _ fm_l fm_rkey_to_find 
 | key_to_find < key = 
lookupFM fm_l key_to_find
 | key_to_find > key = 
lookupFM fm_r key_to_find
 | otherwise = 
Just elt

  sizeFM :: FiniteMap a b  ->  Int
sizeFM EmptyFM 0
sizeFM (Branch _ _ size _ _) size


module Maybe where
  import qualified FiniteMap
import qualified Prelude



If Reductions:
The following If expression
if primGEqNatS x y then Succ (primDivNatS (primMinusNatS x y) (Succ y)) else Zero

is transformed to
primDivNatS0 x y True = Succ (primDivNatS (primMinusNatS x y) (Succ y))
primDivNatS0 x y False = Zero

The following If expression
if primGEqNatS x y then primModNatS (primMinusNatS x y) (Succ y) else Succ x

is transformed to
primModNatS0 x y True = primModNatS (primMinusNatS x y) (Succ y)
primModNatS0 x y False = Succ x



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
HASKELL
              ↳ BR

mainModule FiniteMap
  ((lookupFM :: Ord a => FiniteMap a b  ->  a  ->  Maybe b) :: Ord a => FiniteMap a b  ->  a  ->  Maybe b)

module FiniteMap where
  import qualified Maybe
import qualified Prelude

  data FiniteMap a b = EmptyFM  | Branch a b Int (FiniteMap a b) (FiniteMap a b


  instance (Eq a, Eq b) => Eq (FiniteMap b a) where 
   
(==) fm_1 fm_2 sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2

  fmToList :: FiniteMap b a  ->  [(b,a)]
fmToList fm foldFM fmToList0 [] fm

  
fmToList0 key elt rest (key,elt: rest

  foldFM :: (c  ->  a  ->  b  ->  b ->  b  ->  FiniteMap c a  ->  b
foldFM k z EmptyFM z
foldFM k z (Branch key elt _ fm_l fm_rfoldFM k (k key elt (foldFM k z fm_r)) fm_l

  lookupFM :: Ord b => FiniteMap b a  ->  b  ->  Maybe a
lookupFM EmptyFM key Nothing
lookupFM (Branch key elt _ fm_l fm_rkey_to_find 
 | key_to_find < key = 
lookupFM fm_l key_to_find
 | key_to_find > key = 
lookupFM fm_r key_to_find
 | otherwise = 
Just elt

  sizeFM :: FiniteMap b a  ->  Int
sizeFM EmptyFM 0
sizeFM (Branch _ _ size _ _) size


module Maybe where
  import qualified FiniteMap
import qualified Prelude



Replaced joker patterns by fresh variables and removed binding patterns.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
HASKELL
                  ↳ COR

mainModule FiniteMap
  ((lookupFM :: Ord b => FiniteMap b a  ->  b  ->  Maybe a) :: Ord b => FiniteMap b a  ->  b  ->  Maybe a)

module FiniteMap where
  import qualified Maybe
import qualified Prelude

  data FiniteMap a b = EmptyFM  | Branch a b Int (FiniteMap a b) (FiniteMap a b


  instance (Eq a, Eq b) => Eq (FiniteMap b a) where 
   
(==) fm_1 fm_2 sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2

  fmToList :: FiniteMap b a  ->  [(b,a)]
fmToList fm foldFM fmToList0 [] fm

  
fmToList0 key elt rest (key,elt: rest

  foldFM :: (a  ->  c  ->  b  ->  b ->  b  ->  FiniteMap a c  ->  b
foldFM k z EmptyFM z
foldFM k z (Branch key elt vw fm_l fm_rfoldFM k (k key elt (foldFM k z fm_r)) fm_l

  lookupFM :: Ord b => FiniteMap b a  ->  b  ->  Maybe a
lookupFM EmptyFM key Nothing
lookupFM (Branch key elt vx fm_l fm_rkey_to_find 
 | key_to_find < key = 
lookupFM fm_l key_to_find
 | key_to_find > key = 
lookupFM fm_r key_to_find
 | otherwise = 
Just elt

  sizeFM :: FiniteMap a b  ->  Int
sizeFM EmptyFM 0
sizeFM (Branch vy vz size wu wvsize


module Maybe where
  import qualified FiniteMap
import qualified Prelude



Cond Reductions:
The following Function with conditions
lookupFM EmptyFM key = Nothing
lookupFM (Branch key elt vx fm_l fm_rkey_to_find
 | key_to_find < key
 = lookupFM fm_l key_to_find
 | key_to_find > key
 = lookupFM fm_r key_to_find
 | otherwise
 = Just elt

is transformed to
lookupFM EmptyFM key = lookupFM4 EmptyFM key
lookupFM (Branch key elt vx fm_l fm_rkey_to_find = lookupFM3 (Branch key elt vx fm_l fm_rkey_to_find

lookupFM1 key elt vx fm_l fm_r key_to_find True = lookupFM fm_r key_to_find
lookupFM1 key elt vx fm_l fm_r key_to_find False = lookupFM0 key elt vx fm_l fm_r key_to_find otherwise

lookupFM0 key elt vx fm_l fm_r key_to_find True = Just elt

lookupFM2 key elt vx fm_l fm_r key_to_find True = lookupFM fm_l key_to_find
lookupFM2 key elt vx fm_l fm_r key_to_find False = lookupFM1 key elt vx fm_l fm_r key_to_find (key_to_find > key)

lookupFM3 (Branch key elt vx fm_l fm_rkey_to_find = lookupFM2 key elt vx fm_l fm_r key_to_find (key_to_find < key)

lookupFM4 EmptyFM key = Nothing
lookupFM4 vvu vvv = lookupFM3 vvu vvv

The following Function with conditions
compare x y
 | x == y
 = EQ
 | x <= y
 = LT
 | otherwise
 = GT

is transformed to
compare x y = compare3 x y

compare2 x y True = EQ
compare2 x y False = compare1 x y (x <= y)

compare1 x y True = LT
compare1 x y False = compare0 x y otherwise

compare0 x y True = GT

compare3 x y = compare2 x y (x == y)

The following Function with conditions
gcd' x 0 = x
gcd' x y = gcd' y (x `rem` y)

is transformed to
gcd' x vvw = gcd'2 x vvw
gcd' x y = gcd'0 x y

gcd'0 x y = gcd' y (x `rem` y)

gcd'1 True x vvw = x
gcd'1 vvx vvy vvz = gcd'0 vvy vvz

gcd'2 x vvw = gcd'1 (vvw == 0) x vvw
gcd'2 vwu vwv = gcd'0 vwu vwv

The following Function with conditions
gcd 0 0 = error []
gcd x y = 
gcd' (abs x) (abs y)
where 
gcd' x 0 = x
gcd' x y = gcd' y (x `rem` y)

is transformed to
gcd vww vwx = gcd3 vww vwx
gcd x y = gcd0 x y

gcd0 x y = 
gcd' (abs x) (abs y)
where 
gcd' x vvw = gcd'2 x vvw
gcd' x y = gcd'0 x y
gcd'0 x y = gcd' y (x `rem` y)
gcd'1 True x vvw = x
gcd'1 vvx vvy vvz = gcd'0 vvy vvz
gcd'2 x vvw = gcd'1 (vvw == 0) x vvw
gcd'2 vwu vwv = gcd'0 vwu vwv

gcd1 True vww vwx = error []
gcd1 vwy vwz vxu = gcd0 vwz vxu

gcd2 True vww vwx = gcd1 (vwx == 0) vww vwx
gcd2 vxv vxw vxx = gcd0 vxw vxx

gcd3 vww vwx = gcd2 (vww == 0) vww vwx
gcd3 vxy vxz = gcd0 vxy vxz

The following Function with conditions
absReal x
 | x >= 0
 = x
 | otherwise
 = `negate` x

is transformed to
absReal x = absReal2 x

absReal1 x True = x
absReal1 x False = absReal0 x otherwise

absReal0 x True = `negate` x

absReal2 x = absReal1 x (x >= 0)

The following Function with conditions
undefined 
 | False
 = undefined

is transformed to
undefined  = undefined1

undefined0 True = undefined

undefined1  = undefined0 False

The following Function with conditions
reduce x y
 | y == 0
 = error []
 | otherwise
 = x `quot` d :% (y `quot` d)
where 
d  = gcd x y

is transformed to
reduce x y = reduce2 x y

reduce2 x y = 
reduce1 x y (y == 0)
where 
d  = gcd x y
reduce0 x y True = x `quot` d :% (y `quot` d)
reduce1 x y True = error []
reduce1 x y False = reduce0 x y otherwise



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
HASKELL
                      ↳ LetRed

mainModule FiniteMap
  ((lookupFM :: Ord a => FiniteMap a b  ->  a  ->  Maybe b) :: Ord a => FiniteMap a b  ->  a  ->  Maybe b)

module FiniteMap where
  import qualified Maybe
import qualified Prelude

  data FiniteMap a b = EmptyFM  | Branch a b Int (FiniteMap a b) (FiniteMap a b


  instance (Eq a, Eq b) => Eq (FiniteMap b a) where 
   
(==) fm_1 fm_2 sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2

  fmToList :: FiniteMap a b  ->  [(a,b)]
fmToList fm foldFM fmToList0 [] fm

  
fmToList0 key elt rest (key,elt: rest

  foldFM :: (b  ->  c  ->  a  ->  a ->  a  ->  FiniteMap b c  ->  a
foldFM k z EmptyFM z
foldFM k z (Branch key elt vw fm_l fm_rfoldFM k (k key elt (foldFM k z fm_r)) fm_l

  lookupFM :: Ord b => FiniteMap b a  ->  b  ->  Maybe a
lookupFM EmptyFM key lookupFM4 EmptyFM key
lookupFM (Branch key elt vx fm_l fm_rkey_to_find lookupFM3 (Branch key elt vx fm_l fm_r) key_to_find

  
lookupFM0 key elt vx fm_l fm_r key_to_find True Just elt

  
lookupFM1 key elt vx fm_l fm_r key_to_find True lookupFM fm_r key_to_find
lookupFM1 key elt vx fm_l fm_r key_to_find False lookupFM0 key elt vx fm_l fm_r key_to_find otherwise

  
lookupFM2 key elt vx fm_l fm_r key_to_find True lookupFM fm_l key_to_find
lookupFM2 key elt vx fm_l fm_r key_to_find False lookupFM1 key elt vx fm_l fm_r key_to_find (key_to_find > key)

  
lookupFM3 (Branch key elt vx fm_l fm_rkey_to_find lookupFM2 key elt vx fm_l fm_r key_to_find (key_to_find < key)

  
lookupFM4 EmptyFM key Nothing
lookupFM4 vvu vvv lookupFM3 vvu vvv

  sizeFM :: FiniteMap a b  ->  Int
sizeFM EmptyFM 0
sizeFM (Branch vy vz size wu wvsize


module Maybe where
  import qualified FiniteMap
import qualified Prelude



Let/Where Reductions:
The bindings of the following Let/Where expression
reduce1 x y (y == 0)
where 
d  = gcd x y
reduce0 x y True = x `quot` d :% (y `quot` d)
reduce1 x y True = error []
reduce1 x y False = reduce0 x y otherwise

are unpacked to the following functions on top level
reduce2Reduce0 vyu vyv x y True = x `quot` reduce2D vyu vyv :% (y `quot` reduce2D vyu vyv)

reduce2Reduce1 vyu vyv x y True = error []
reduce2Reduce1 vyu vyv x y False = reduce2Reduce0 vyu vyv x y otherwise

reduce2D vyu vyv = gcd vyu vyv

The bindings of the following Let/Where expression
gcd' (abs x) (abs y)
where 
gcd' x vvw = gcd'2 x vvw
gcd' x y = gcd'0 x y
gcd'0 x y = gcd' y (x `rem` y)
gcd'1 True x vvw = x
gcd'1 vvx vvy vvz = gcd'0 vvy vvz
gcd'2 x vvw = gcd'1 (vvw == 0) x vvw
gcd'2 vwu vwv = gcd'0 vwu vwv

are unpacked to the following functions on top level
gcd0Gcd'0 x y = gcd0Gcd' y (x `rem` y)

gcd0Gcd' x vvw = gcd0Gcd'2 x vvw
gcd0Gcd' x y = gcd0Gcd'0 x y

gcd0Gcd'2 x vvw = gcd0Gcd'1 (vvw == 0) x vvw
gcd0Gcd'2 vwu vwv = gcd0Gcd'0 vwu vwv

gcd0Gcd'1 True x vvw = x
gcd0Gcd'1 vvx vvy vvz = gcd0Gcd'0 vvy vvz



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
HASKELL
                          ↳ NumRed

mainModule FiniteMap
  ((lookupFM :: Ord a => FiniteMap a b  ->  a  ->  Maybe b) :: Ord a => FiniteMap a b  ->  a  ->  Maybe b)

module FiniteMap where
  import qualified Maybe
import qualified Prelude

  data FiniteMap a b = EmptyFM  | Branch a b Int (FiniteMap a b) (FiniteMap a b


  instance (Eq a, Eq b) => Eq (FiniteMap a b) where 
   
(==) fm_1 fm_2 sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2

  fmToList :: FiniteMap a b  ->  [(a,b)]
fmToList fm foldFM fmToList0 [] fm

  
fmToList0 key elt rest (key,elt: rest

  foldFM :: (c  ->  a  ->  b  ->  b ->  b  ->  FiniteMap c a  ->  b
foldFM k z EmptyFM z
foldFM k z (Branch key elt vw fm_l fm_rfoldFM k (k key elt (foldFM k z fm_r)) fm_l

  lookupFM :: Ord b => FiniteMap b a  ->  b  ->  Maybe a
lookupFM EmptyFM key lookupFM4 EmptyFM key
lookupFM (Branch key elt vx fm_l fm_rkey_to_find lookupFM3 (Branch key elt vx fm_l fm_r) key_to_find

  
lookupFM0 key elt vx fm_l fm_r key_to_find True Just elt

  
lookupFM1 key elt vx fm_l fm_r key_to_find True lookupFM fm_r key_to_find
lookupFM1 key elt vx fm_l fm_r key_to_find False lookupFM0 key elt vx fm_l fm_r key_to_find otherwise

  
lookupFM2 key elt vx fm_l fm_r key_to_find True lookupFM fm_l key_to_find
lookupFM2 key elt vx fm_l fm_r key_to_find False lookupFM1 key elt vx fm_l fm_r key_to_find (key_to_find > key)

  
lookupFM3 (Branch key elt vx fm_l fm_rkey_to_find lookupFM2 key elt vx fm_l fm_r key_to_find (key_to_find < key)

  
lookupFM4 EmptyFM key Nothing
lookupFM4 vvu vvv lookupFM3 vvu vvv

  sizeFM :: FiniteMap a b  ->  Int
sizeFM EmptyFM 0
sizeFM (Branch vy vz size wu wvsize


module Maybe where
  import qualified FiniteMap
import qualified Prelude



Num Reduction: All numbers are transformed to thier corresponding representation with Pos, Neg, Succ and Zero.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
HASKELL
                              ↳ Narrow

mainModule FiniteMap
  (lookupFM :: Ord b => FiniteMap b a  ->  b  ->  Maybe a)

module FiniteMap where
  import qualified Maybe
import qualified Prelude

  data FiniteMap a b = EmptyFM  | Branch a b Int (FiniteMap a b) (FiniteMap a b


  instance (Eq a, Eq b) => Eq (FiniteMap a b) where 
   
(==) fm_1 fm_2 sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2

  fmToList :: FiniteMap a b  ->  [(a,b)]
fmToList fm foldFM fmToList0 [] fm

  
fmToList0 key elt rest (key,elt: rest

  foldFM :: (b  ->  c  ->  a  ->  a ->  a  ->  FiniteMap b c  ->  a
foldFM k z EmptyFM z
foldFM k z (Branch key elt vw fm_l fm_rfoldFM k (k key elt (foldFM k z fm_r)) fm_l

  lookupFM :: Ord a => FiniteMap a b  ->  a  ->  Maybe b
lookupFM EmptyFM key lookupFM4 EmptyFM key
lookupFM (Branch key elt vx fm_l fm_rkey_to_find lookupFM3 (Branch key elt vx fm_l fm_r) key_to_find

  
lookupFM0 key elt vx fm_l fm_r key_to_find True Just elt

  
lookupFM1 key elt vx fm_l fm_r key_to_find True lookupFM fm_r key_to_find
lookupFM1 key elt vx fm_l fm_r key_to_find False lookupFM0 key elt vx fm_l fm_r key_to_find otherwise

  
lookupFM2 key elt vx fm_l fm_r key_to_find True lookupFM fm_l key_to_find
lookupFM2 key elt vx fm_l fm_r key_to_find False lookupFM1 key elt vx fm_l fm_r key_to_find (key_to_find > key)

  
lookupFM3 (Branch key elt vx fm_l fm_rkey_to_find lookupFM2 key elt vx fm_l fm_r key_to_find (key_to_find < key)

  
lookupFM4 EmptyFM key Nothing
lookupFM4 vvu vvv lookupFM3 vvu vvv

  sizeFM :: FiniteMap a b  ->  Int
sizeFM EmptyFM Pos Zero
sizeFM (Branch vy vz size wu wvsize


module Maybe where
  import qualified FiniteMap
import qualified Prelude



Haskell To QDPs


↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
QDP
                                    ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_primEqNat(Succ(vyw4000), Succ(vyw30000)) → new_primEqNat(vyw4000, vyw30000)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
QDP
                                    ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_primPlusNat(Succ(vyw17800), Succ(vyw301000)) → new_primPlusNat(vyw17800, vyw301000)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_primMulNat(Succ(vyw4000), Succ(vyw30100)) → new_primMulNat(vyw4000, Succ(vyw30100))

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_esEs(@2(vyw400, vyw401), @2(vyw3000, vyw3001), app(app(ty_@2, cb), cc), cd) → new_esEs(vyw400, vyw3000, cb, cc)
new_esEs(@2(vyw400, vyw401), @2(vyw3000, vyw3001), h, app(ty_[], bg)) → new_esEs2(vyw401, vyw3001, bg)
new_esEs1(@3(vyw400, vyw401, vyw402), @3(vyw3000, vyw3001, vyw3002), ef, app(app(app(ty_@3, gf), gg), gh), gd) → new_esEs1(vyw401, vyw3001, gf, gg, gh)
new_esEs1(@3(vyw400, vyw401, vyw402), @3(vyw3000, vyw3001, vyw3002), ef, app(app(ty_Either, hb), hc), gd) → new_esEs3(vyw401, vyw3001, hb, hc)
new_esEs0(Just(vyw400), Just(vyw3000), app(app(ty_Either, ed), ee)) → new_esEs3(vyw400, vyw3000, ed, ee)
new_esEs1(@3(vyw400, vyw401, vyw402), @3(vyw3000, vyw3001, vyw3002), ef, app(app(ty_@2, gb), gc), gd) → new_esEs(vyw401, vyw3001, gb, gc)
new_esEs1(@3(vyw400, vyw401, vyw402), @3(vyw3000, vyw3001, vyw3002), ef, eg, app(app(ty_Either, fh), ga)) → new_esEs3(vyw402, vyw3002, fh, ga)
new_esEs3(Right(vyw400), Right(vyw3000), bda, app(app(ty_Either, bea), beb)) → new_esEs3(vyw400, vyw3000, bea, beb)
new_esEs1(@3(vyw400, vyw401, vyw402), @3(vyw3000, vyw3001, vyw3002), ef, app(ty_Maybe, ge), gd) → new_esEs0(vyw401, vyw3001, ge)
new_esEs1(@3(vyw400, vyw401, vyw402), @3(vyw3000, vyw3001, vyw3002), ef, eg, app(app(app(ty_@3, fc), fd), ff)) → new_esEs1(vyw402, vyw3002, fc, fd, ff)
new_esEs0(Just(vyw400), Just(vyw3000), app(ty_Maybe, dg)) → new_esEs0(vyw400, vyw3000, dg)
new_esEs3(Right(vyw400), Right(vyw3000), bda, app(app(app(ty_@3, bde), bdf), bdg)) → new_esEs1(vyw400, vyw3000, bde, bdf, bdg)
new_esEs3(Left(vyw400), Left(vyw3000), app(app(app(ty_@3, bcc), bcd), bce), bca) → new_esEs1(vyw400, vyw3000, bcc, bcd, bce)
new_esEs1(@3(vyw400, vyw401, vyw402), @3(vyw3000, vyw3001, vyw3002), ef, eg, app(ty_[], fg)) → new_esEs2(vyw402, vyw3002, fg)
new_esEs(@2(vyw400, vyw401), @2(vyw3000, vyw3001), h, app(ty_Maybe, bc)) → new_esEs0(vyw401, vyw3001, bc)
new_esEs3(Left(vyw400), Left(vyw3000), app(app(ty_Either, bcg), bch), bca) → new_esEs3(vyw400, vyw3000, bcg, bch)
new_esEs3(Left(vyw400), Left(vyw3000), app(app(ty_@2, bbg), bbh), bca) → new_esEs(vyw400, vyw3000, bbg, bbh)
new_esEs1(@3(vyw400, vyw401, vyw402), @3(vyw3000, vyw3001, vyw3002), ef, eg, app(ty_Maybe, fb)) → new_esEs0(vyw402, vyw3002, fb)
new_esEs1(@3(vyw400, vyw401, vyw402), @3(vyw3000, vyw3001, vyw3002), ef, eg, app(app(ty_@2, eh), fa)) → new_esEs(vyw402, vyw3002, eh, fa)
new_esEs1(@3(vyw400, vyw401, vyw402), @3(vyw3000, vyw3001, vyw3002), ef, app(ty_[], ha), gd) → new_esEs2(vyw401, vyw3001, ha)
new_esEs2(:(vyw400, vyw401), :(vyw3000, vyw3001), app(ty_Maybe, bah)) → new_esEs0(vyw400, vyw3000, bah)
new_esEs(@2(vyw400, vyw401), @2(vyw3000, vyw3001), h, app(app(app(ty_@3, bd), be), bf)) → new_esEs1(vyw401, vyw3001, bd, be, bf)
new_esEs2(:(vyw400, vyw401), :(vyw3000, vyw3001), app(app(app(ty_@3, bba), bbb), bbc)) → new_esEs1(vyw400, vyw3000, bba, bbb, bbc)
new_esEs1(@3(vyw400, vyw401, vyw402), @3(vyw3000, vyw3001, vyw3002), app(app(app(ty_@3, hg), hh), baa), eg, gd) → new_esEs1(vyw400, vyw3000, hg, hh, baa)
new_esEs(@2(vyw400, vyw401), @2(vyw3000, vyw3001), app(app(ty_Either, dc), dd), cd) → new_esEs3(vyw400, vyw3000, dc, dd)
new_esEs0(Just(vyw400), Just(vyw3000), app(app(ty_@2, de), df)) → new_esEs(vyw400, vyw3000, de, df)
new_esEs(@2(vyw400, vyw401), @2(vyw3000, vyw3001), app(ty_Maybe, ce), cd) → new_esEs0(vyw400, vyw3000, ce)
new_esEs3(Right(vyw400), Right(vyw3000), bda, app(ty_[], bdh)) → new_esEs2(vyw400, vyw3000, bdh)
new_esEs(@2(vyw400, vyw401), @2(vyw3000, vyw3001), h, app(app(ty_Either, bh), ca)) → new_esEs3(vyw401, vyw3001, bh, ca)
new_esEs2(:(vyw400, vyw401), :(vyw3000, vyw3001), bae) → new_esEs2(vyw401, vyw3001, bae)
new_esEs2(:(vyw400, vyw401), :(vyw3000, vyw3001), app(app(ty_@2, baf), bag)) → new_esEs(vyw400, vyw3000, baf, bag)
new_esEs(@2(vyw400, vyw401), @2(vyw3000, vyw3001), h, app(app(ty_@2, ba), bb)) → new_esEs(vyw401, vyw3001, ba, bb)
new_esEs2(:(vyw400, vyw401), :(vyw3000, vyw3001), app(ty_[], bbd)) → new_esEs2(vyw400, vyw3000, bbd)
new_esEs1(@3(vyw400, vyw401, vyw402), @3(vyw3000, vyw3001, vyw3002), app(ty_Maybe, hf), eg, gd) → new_esEs0(vyw400, vyw3000, hf)
new_esEs1(@3(vyw400, vyw401, vyw402), @3(vyw3000, vyw3001, vyw3002), app(ty_[], bab), eg, gd) → new_esEs2(vyw400, vyw3000, bab)
new_esEs1(@3(vyw400, vyw401, vyw402), @3(vyw3000, vyw3001, vyw3002), app(app(ty_Either, bac), bad), eg, gd) → new_esEs3(vyw400, vyw3000, bac, bad)
new_esEs2(:(vyw400, vyw401), :(vyw3000, vyw3001), app(app(ty_Either, bbe), bbf)) → new_esEs3(vyw400, vyw3000, bbe, bbf)
new_esEs(@2(vyw400, vyw401), @2(vyw3000, vyw3001), app(app(app(ty_@3, cf), cg), da), cd) → new_esEs1(vyw400, vyw3000, cf, cg, da)
new_esEs1(@3(vyw400, vyw401, vyw402), @3(vyw3000, vyw3001, vyw3002), app(app(ty_@2, hd), he), eg, gd) → new_esEs(vyw400, vyw3000, hd, he)
new_esEs3(Left(vyw400), Left(vyw3000), app(ty_Maybe, bcb), bca) → new_esEs0(vyw400, vyw3000, bcb)
new_esEs3(Right(vyw400), Right(vyw3000), bda, app(ty_Maybe, bdd)) → new_esEs0(vyw400, vyw3000, bdd)
new_esEs3(Left(vyw400), Left(vyw3000), app(ty_[], bcf), bca) → new_esEs2(vyw400, vyw3000, bcf)
new_esEs0(Just(vyw400), Just(vyw3000), app(app(app(ty_@3, dh), ea), eb)) → new_esEs1(vyw400, vyw3000, dh, ea, eb)
new_esEs0(Just(vyw400), Just(vyw3000), app(ty_[], ec)) → new_esEs2(vyw400, vyw3000, ec)
new_esEs3(Right(vyw400), Right(vyw3000), bda, app(app(ty_@2, bdb), bdc)) → new_esEs(vyw400, vyw3000, bdb, bdc)
new_esEs(@2(vyw400, vyw401), @2(vyw3000, vyw3001), app(ty_[], db), cd) → new_esEs2(vyw400, vyw3000, db)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_primCmpNat(Succ(vyw400), Succ(vyw3000)) → new_primCmpNat(vyw400, vyw3000)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ QDPSizeChangeProof
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_compare24(vyw85, vyw86, vyw87, vyw88, vyw89, vyw90, False, app(app(ty_@2, ccd), cce), ccf, ccg) → new_lt(vyw85, vyw88, ccd, cce)
new_ltEs1(Left(vyw600), Left(vyw610), app(ty_Maybe, bae), baa) → new_ltEs2(vyw600, vyw610, bae)
new_compare21(@2(vyw600, vyw601), @2(vyw610, vyw611), False, app(app(ty_@2, app(app(ty_@2, cb), cc)), cd), bhd) → new_lt(vyw600, vyw610, cb, cc)
new_compare24(vyw85, vyw86, vyw87, vyw88, vyw89, vyw90, False, cdg, ccf, app(ty_[], ceb)) → new_ltEs0(vyw87, vyw90, ceb)
new_compare21(Just(vyw600), Just(vyw610), False, app(ty_Maybe, app(app(app(ty_@3, bda), bdb), bdc)), bhd) → new_ltEs3(vyw600, vyw610, bda, bdb, bdc)
new_compare20(vyw98, vyw99, vyw100, vyw101, False, app(app(ty_Either, ha), hb), gg) → new_lt1(vyw98, vyw100, ha, hb)
new_compare24(vyw85, vyw86, vyw87, vyw88, vyw89, vyw90, False, cdg, app(ty_[], cfc), ccg) → new_lt0(vyw86, vyw89, cfc)
new_lt1(Right(vyw40), Right(vyw300), bhb, bhc) → new_compare22(vyw40, vyw300, new_esEs7(vyw40, vyw300, bhc), bhb, bhc)
new_ltEs(@2(vyw600, vyw601), @2(vyw610, vyw611), app(ty_[], ce), cd) → new_lt0(vyw600, vyw610, ce)
new_ltEs1(Left(vyw600), Left(vyw610), app(app(ty_Either, bac), bad), baa) → new_ltEs1(vyw600, vyw610, bac, bad)
new_ltEs1(Right(vyw600), Right(vyw610), bba, app(ty_Maybe, bbg)) → new_ltEs2(vyw600, vyw610, bbg)
new_compare21(@2(vyw600, vyw601), @2(vyw610, vyw611), False, app(app(ty_@2, h), app(ty_Maybe, bf)), bhd) → new_ltEs2(vyw601, vyw611, bf)
new_ltEs(@2(vyw600, vyw601), @2(vyw610, vyw611), h, app(ty_Maybe, bf)) → new_ltEs2(vyw601, vyw611, bf)
new_compare21(Left(vyw600), Left(vyw610), False, app(app(ty_Either, app(app(ty_Either, bac), bad)), baa), bhd) → new_ltEs1(vyw600, vyw610, bac, bad)
new_compare20(vyw98, vyw99, vyw100, vyw101, False, fb, app(ty_Maybe, ga)) → new_ltEs2(vyw99, vyw101, ga)
new_compare21(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), False, app(app(app(ty_@3, app(app(ty_Either, bgd), bge)), bde), bfa), bhd) → new_lt1(vyw600, vyw610, bgd, bge)
new_ltEs3(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), bdd, app(ty_[], bfb), bfa) → new_lt0(vyw601, vyw611, bfb)
new_compare21(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), False, app(app(app(ty_@3, bdd), bde), app(app(ty_Either, bea), beb)), bhd) → new_ltEs1(vyw602, vyw612, bea, beb)
new_ltEs(@2(vyw600, vyw601), @2(vyw610, vyw611), app(app(app(ty_@3, db), dc), dd), cd) → new_lt3(vyw600, vyw610, db, dc, dd)
new_ltEs3(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), app(app(ty_@2, bga), bgb), bde, bfa) → new_lt(vyw600, vyw610, bga, bgb)
new_compare20(vyw98, vyw99, vyw100, vyw101, False, app(ty_Maybe, hc), gg) → new_lt2(vyw98, vyw100, hc)
new_compare21(@2(vyw600, vyw601), @2(vyw610, vyw611), False, app(app(ty_@2, h), app(app(ty_@2, ba), bb)), bhd) → new_ltEs(vyw601, vyw611, ba, bb)
new_compare21(@2(vyw600, vyw601), @2(vyw610, vyw611), False, app(app(ty_@2, h), app(app(app(ty_@3, bg), bh), ca)), bhd) → new_ltEs3(vyw601, vyw611, bg, bh, ca)
new_compare21(@2(vyw600, vyw601), @2(vyw610, vyw611), False, app(app(ty_@2, app(app(ty_Either, cf), cg)), cd), bhd) → new_lt1(vyw600, vyw610, cf, cg)
new_ltEs(@2(vyw600, vyw601), @2(vyw610, vyw611), h, app(ty_[], bc)) → new_ltEs0(vyw601, vyw611, bc)
new_compare22(vyw67, vyw68, False, bhe, app(app(app(ty_@3, cad), cae), caf)) → new_ltEs3(vyw67, vyw68, cad, cae, caf)
new_compare23(vyw74, vyw75, False, app(ty_Maybe, cbe)) → new_ltEs2(vyw74, vyw75, cbe)
new_ltEs3(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), app(app(ty_Either, bgd), bge), bde, bfa) → new_lt1(vyw600, vyw610, bgd, bge)
new_compare21(Right(vyw600), Right(vyw610), False, app(app(ty_Either, bba), app(app(ty_Either, bbe), bbf)), bhd) → new_ltEs1(vyw600, vyw610, bbe, bbf)
new_lt0(:(vyw40, vyw41), :(vyw300, vyw301), df) → new_primCompAux(vyw40, vyw300, new_compare0(vyw41, vyw301, df), df)
new_primCompAux(vyw40, vyw300, vyw39, app(ty_[], ea)) → new_compare(vyw40, vyw300, ea)
new_compare24(vyw85, vyw86, vyw87, vyw88, vyw89, vyw90, False, cdg, app(ty_Maybe, cff), ccg) → new_lt2(vyw86, vyw89, cff)
new_compare21(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), False, app(app(app(ty_@3, bdd), bde), app(app(app(ty_@3, bed), bee), bef)), bhd) → new_ltEs3(vyw602, vyw612, bed, bee, bef)
new_compare23(vyw74, vyw75, False, app(app(ty_Either, cbc), cbd)) → new_ltEs1(vyw74, vyw75, cbc, cbd)
new_compare24(vyw85, vyw86, vyw87, vyw88, vyw89, vyw90, False, cdg, ccf, app(app(ty_@2, cdh), cea)) → new_ltEs(vyw87, vyw90, cdh, cea)
new_ltEs1(Right(vyw600), Right(vyw610), bba, app(app(ty_@2, bbb), bbc)) → new_ltEs(vyw600, vyw610, bbb, bbc)
new_lt(@2(vyw40, vyw41), @2(vyw300, vyw301), eh, fa) → new_compare20(vyw40, vyw41, vyw300, vyw301, new_asAs(new_esEs5(vyw40, vyw300, eh), new_esEs4(vyw41, vyw301, fa)), eh, fa)
new_compare21(@2(vyw600, vyw601), @2(vyw610, vyw611), False, app(app(ty_@2, h), app(ty_[], bc)), bhd) → new_ltEs0(vyw601, vyw611, bc)
new_compare21(Right(vyw600), Right(vyw610), False, app(app(ty_Either, bba), app(app(ty_@2, bbb), bbc)), bhd) → new_ltEs(vyw600, vyw610, bbb, bbc)
new_compare24(vyw85, vyw86, vyw87, vyw88, vyw89, vyw90, False, cdg, ccf, app(ty_Maybe, cee)) → new_ltEs2(vyw87, vyw90, cee)
new_compare21(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), False, app(app(app(ty_@3, bdd), bde), app(ty_Maybe, bec)), bhd) → new_ltEs2(vyw602, vyw612, bec)
new_compare21(Left(vyw600), Left(vyw610), False, app(app(ty_Either, app(ty_[], bab)), baa), bhd) → new_ltEs0(vyw600, vyw610, bab)
new_compare21(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), False, app(app(app(ty_@3, app(ty_[], bgc)), bde), bfa), bhd) → new_lt0(vyw600, vyw610, bgc)
new_ltEs2(Just(vyw600), Just(vyw610), app(app(ty_Either, bcf), bcg)) → new_ltEs1(vyw600, vyw610, bcf, bcg)
new_compare3(Just(vyw40), Just(vyw300), cag) → new_compare23(vyw40, vyw300, new_esEs8(vyw40, vyw300, cag), cag)
new_ltEs2(Just(vyw600), Just(vyw610), app(app(app(ty_@3, bda), bdb), bdc)) → new_ltEs3(vyw600, vyw610, bda, bdb, bdc)
new_ltEs3(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), bdd, bde, app(app(ty_@2, bdf), bdg)) → new_ltEs(vyw602, vyw612, bdf, bdg)
new_compare24(vyw85, vyw86, vyw87, vyw88, vyw89, vyw90, False, cdg, app(app(ty_Either, cfd), cfe), ccg) → new_lt1(vyw86, vyw89, cfd, cfe)
new_compare21(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), False, app(app(app(ty_@3, bdd), app(ty_Maybe, bfe)), bfa), bhd) → new_lt2(vyw601, vyw611, bfe)
new_compare21(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), False, app(app(app(ty_@3, bdd), app(app(ty_@2, beg), beh)), bfa), bhd) → new_lt(vyw601, vyw611, beg, beh)
new_lt3(@3(vyw40, vyw41, vyw42), @3(vyw300, vyw301, vyw302), cca, ccb, ccc) → new_compare24(vyw40, vyw41, vyw42, vyw300, vyw301, vyw302, new_asAs(new_esEs11(vyw40, vyw300, cca), new_asAs(new_esEs10(vyw41, vyw301, ccb), new_esEs9(vyw42, vyw302, ccc))), cca, ccb, ccc)
new_compare21(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), False, app(app(app(ty_@3, app(app(ty_@2, bga), bgb)), bde), bfa), bhd) → new_lt(vyw600, vyw610, bga, bgb)
new_ltEs3(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), bdd, bde, app(app(ty_Either, bea), beb)) → new_ltEs1(vyw602, vyw612, bea, beb)
new_compare22(vyw67, vyw68, False, bhe, app(ty_Maybe, cac)) → new_ltEs2(vyw67, vyw68, cac)
new_ltEs(@2(vyw600, vyw601), @2(vyw610, vyw611), h, app(app(ty_@2, ba), bb)) → new_ltEs(vyw601, vyw611, ba, bb)
new_ltEs1(Right(vyw600), Right(vyw610), bba, app(app(ty_Either, bbe), bbf)) → new_ltEs1(vyw600, vyw610, bbe, bbf)
new_ltEs3(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), bdd, app(app(app(ty_@3, bff), bfg), bfh), bfa) → new_lt3(vyw601, vyw611, bff, bfg, bfh)
new_compare21(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), False, app(app(app(ty_@3, bdd), app(ty_[], bfb)), bfa), bhd) → new_lt0(vyw601, vyw611, bfb)
new_compare1(@2(vyw40, vyw41), @2(vyw300, vyw301), eh, fa) → new_compare20(vyw40, vyw41, vyw300, vyw301, new_asAs(new_esEs5(vyw40, vyw300, eh), new_esEs4(vyw41, vyw301, fa)), eh, fa)
new_compare20(vyw98, vyw99, vyw100, vyw101, False, fb, app(app(ty_Either, fg), fh)) → new_ltEs1(vyw99, vyw101, fg, fh)
new_compare23(vyw74, vyw75, False, app(app(ty_@2, cah), cba)) → new_ltEs(vyw74, vyw75, cah, cba)
new_ltEs2(Just(vyw600), Just(vyw610), app(ty_[], bce)) → new_ltEs0(vyw600, vyw610, bce)
new_lt2(Just(vyw40), Just(vyw300), cag) → new_compare23(vyw40, vyw300, new_esEs8(vyw40, vyw300, cag), cag)
new_primCompAux(vyw40, vyw300, vyw39, app(app(ty_@2, dg), dh)) → new_compare1(vyw40, vyw300, dg, dh)
new_compare4(@3(vyw40, vyw41, vyw42), @3(vyw300, vyw301, vyw302), cca, ccb, ccc) → new_compare24(vyw40, vyw41, vyw42, vyw300, vyw301, vyw302, new_asAs(new_esEs11(vyw40, vyw300, cca), new_asAs(new_esEs10(vyw41, vyw301, ccb), new_esEs9(vyw42, vyw302, ccc))), cca, ccb, ccc)
new_ltEs1(Left(vyw600), Left(vyw610), app(ty_[], bab), baa) → new_ltEs0(vyw600, vyw610, bab)
new_compare21(Just(vyw600), Just(vyw610), False, app(ty_Maybe, app(ty_[], bce)), bhd) → new_ltEs0(vyw600, vyw610, bce)
new_compare24(vyw85, vyw86, vyw87, vyw88, vyw89, vyw90, False, cdg, ccf, app(app(ty_Either, cec), ced)) → new_ltEs1(vyw87, vyw90, cec, ced)
new_compare21(Just(vyw600), Just(vyw610), False, app(ty_Maybe, app(ty_Maybe, bch)), bhd) → new_ltEs2(vyw600, vyw610, bch)
new_ltEs0(vyw60, vyw61, de) → new_compare(vyw60, vyw61, de)
new_compare21(Right(vyw600), Right(vyw610), False, app(app(ty_Either, bba), app(ty_Maybe, bbg)), bhd) → new_ltEs2(vyw600, vyw610, bbg)
new_ltEs3(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), bdd, app(app(ty_Either, bfc), bfd), bfa) → new_lt1(vyw601, vyw611, bfc, bfd)
new_compare24(vyw85, vyw86, vyw87, vyw88, vyw89, vyw90, False, app(app(app(ty_@3, cdd), cde), cdf), ccf, ccg) → new_lt3(vyw85, vyw88, cdd, cde, cdf)
new_ltEs1(Right(vyw600), Right(vyw610), bba, app(app(app(ty_@3, bbh), bca), bcb)) → new_ltEs3(vyw600, vyw610, bbh, bca, bcb)
new_compare20(vyw98, vyw99, vyw100, vyw101, False, fb, app(app(app(ty_@3, gb), gc), gd)) → new_ltEs3(vyw99, vyw101, gb, gc, gd)
new_compare21(@2(vyw600, vyw601), @2(vyw610, vyw611), False, app(app(ty_@2, h), app(app(ty_Either, bd), be)), bhd) → new_ltEs1(vyw601, vyw611, bd, be)
new_ltEs(@2(vyw600, vyw601), @2(vyw610, vyw611), app(ty_Maybe, da), cd) → new_lt2(vyw600, vyw610, da)
new_compare21(@2(vyw600, vyw601), @2(vyw610, vyw611), False, app(app(ty_@2, app(ty_[], ce)), cd), bhd) → new_lt0(vyw600, vyw610, ce)
new_compare21(@2(vyw600, vyw601), @2(vyw610, vyw611), False, app(app(ty_@2, app(ty_Maybe, da)), cd), bhd) → new_lt2(vyw600, vyw610, da)
new_compare24(vyw85, vyw86, vyw87, vyw88, vyw89, vyw90, False, app(ty_Maybe, cdc), ccf, ccg) → new_lt2(vyw85, vyw88, cdc)
new_ltEs1(Left(vyw600), Left(vyw610), app(app(ty_@2, hg), hh), baa) → new_ltEs(vyw600, vyw610, hg, hh)
new_lt0(:(vyw40, vyw41), :(vyw300, vyw301), df) → new_compare(vyw41, vyw301, df)
new_compare21(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), False, app(app(app(ty_@3, app(ty_Maybe, bgf)), bde), bfa), bhd) → new_lt2(vyw600, vyw610, bgf)
new_ltEs3(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), app(ty_[], bgc), bde, bfa) → new_lt0(vyw600, vyw610, bgc)
new_ltEs3(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), app(ty_Maybe, bgf), bde, bfa) → new_lt2(vyw600, vyw610, bgf)
new_ltEs(@2(vyw600, vyw601), @2(vyw610, vyw611), app(app(ty_@2, cb), cc), cd) → new_lt(vyw600, vyw610, cb, cc)
new_compare21(Right(vyw600), Right(vyw610), False, app(app(ty_Either, bba), app(ty_[], bbd)), bhd) → new_ltEs0(vyw600, vyw610, bbd)
new_compare21(@2(vyw600, vyw601), @2(vyw610, vyw611), False, app(app(ty_@2, app(app(app(ty_@3, db), dc), dd)), cd), bhd) → new_lt3(vyw600, vyw610, db, dc, dd)
new_compare21(vyw60, vyw61, False, app(ty_[], de), bhd) → new_compare(vyw60, vyw61, de)
new_compare21(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), False, app(app(app(ty_@3, bdd), app(app(ty_Either, bfc), bfd)), bfa), bhd) → new_lt1(vyw601, vyw611, bfc, bfd)
new_ltEs3(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), bdd, bde, app(ty_Maybe, bec)) → new_ltEs2(vyw602, vyw612, bec)
new_compare24(vyw85, vyw86, vyw87, vyw88, vyw89, vyw90, False, app(ty_[], cch), ccf, ccg) → new_lt0(vyw85, vyw88, cch)
new_primCompAux(vyw40, vyw300, vyw39, app(app(ty_Either, eb), ec)) → new_compare2(vyw40, vyw300, eb, ec)
new_ltEs(@2(vyw600, vyw601), @2(vyw610, vyw611), app(app(ty_Either, cf), cg), cd) → new_lt1(vyw600, vyw610, cf, cg)
new_ltEs(@2(vyw600, vyw601), @2(vyw610, vyw611), h, app(app(app(ty_@3, bg), bh), ca)) → new_ltEs3(vyw601, vyw611, bg, bh, ca)
new_compare20(vyw98, vyw99, vyw100, vyw101, False, app(ty_[], gh), gg) → new_lt0(vyw98, vyw100, gh)
new_compare21(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), False, app(app(app(ty_@3, bdd), bde), app(app(ty_@2, bdf), bdg)), bhd) → new_ltEs(vyw602, vyw612, bdf, bdg)
new_compare2(Right(vyw40), Right(vyw300), bhb, bhc) → new_compare22(vyw40, vyw300, new_esEs7(vyw40, vyw300, bhc), bhb, bhc)
new_lt1(Left(vyw40), Left(vyw300), bhb, bhc) → new_compare21(vyw40, vyw300, new_esEs6(vyw40, vyw300, bhb), bhb, bhc)
new_compare24(vyw85, vyw86, vyw87, vyw88, vyw89, vyw90, False, cdg, ccf, app(app(app(ty_@3, cef), ceg), ceh)) → new_ltEs3(vyw87, vyw90, cef, ceg, ceh)
new_ltEs3(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), bdd, bde, app(ty_[], bdh)) → new_ltEs0(vyw602, vyw612, bdh)
new_ltEs3(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), bdd, app(app(ty_@2, beg), beh), bfa) → new_lt(vyw601, vyw611, beg, beh)
new_ltEs2(Just(vyw600), Just(vyw610), app(app(ty_@2, bcc), bcd)) → new_ltEs(vyw600, vyw610, bcc, bcd)
new_ltEs3(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), bdd, bde, app(app(app(ty_@3, bed), bee), bef)) → new_ltEs3(vyw602, vyw612, bed, bee, bef)
new_compare22(vyw67, vyw68, False, bhe, app(app(ty_@2, bhf), bhg)) → new_ltEs(vyw67, vyw68, bhf, bhg)
new_compare21(Just(vyw600), Just(vyw610), False, app(ty_Maybe, app(app(ty_Either, bcf), bcg)), bhd) → new_ltEs1(vyw600, vyw610, bcf, bcg)
new_ltEs3(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), app(app(app(ty_@3, bgg), bgh), bha), bde, bfa) → new_lt3(vyw600, vyw610, bgg, bgh, bha)
new_ltEs2(Just(vyw600), Just(vyw610), app(ty_Maybe, bch)) → new_ltEs2(vyw600, vyw610, bch)
new_compare(:(vyw40, vyw41), :(vyw300, vyw301), df) → new_compare(vyw41, vyw301, df)
new_compare22(vyw67, vyw68, False, bhe, app(ty_[], bhh)) → new_ltEs0(vyw67, vyw68, bhh)
new_compare23(vyw74, vyw75, False, app(ty_[], cbb)) → new_ltEs0(vyw74, vyw75, cbb)
new_compare21(Left(vyw600), Left(vyw610), False, app(app(ty_Either, app(app(app(ty_@3, baf), bag), bah)), baa), bhd) → new_ltEs3(vyw600, vyw610, baf, bag, bah)
new_compare20(vyw98, vyw99, vyw100, vyw101, False, app(app(ty_@2, ge), gf), gg) → new_lt(vyw98, vyw100, ge, gf)
new_compare21(Left(vyw600), Left(vyw610), False, app(app(ty_Either, app(ty_Maybe, bae)), baa), bhd) → new_ltEs2(vyw600, vyw610, bae)
new_compare(:(vyw40, vyw41), :(vyw300, vyw301), df) → new_primCompAux(vyw40, vyw300, new_compare0(vyw41, vyw301, df), df)
new_compare24(vyw85, vyw86, vyw87, vyw88, vyw89, vyw90, False, cdg, app(app(app(ty_@3, cfg), cfh), cga), ccg) → new_lt3(vyw86, vyw89, cfg, cfh, cga)
new_compare21(Right(vyw600), Right(vyw610), False, app(app(ty_Either, bba), app(app(app(ty_@3, bbh), bca), bcb)), bhd) → new_ltEs3(vyw600, vyw610, bbh, bca, bcb)
new_compare21(Left(vyw600), Left(vyw610), False, app(app(ty_Either, app(app(ty_@2, hg), hh)), baa), bhd) → new_ltEs(vyw600, vyw610, hg, hh)
new_compare22(vyw67, vyw68, False, bhe, app(app(ty_Either, caa), cab)) → new_ltEs1(vyw67, vyw68, caa, cab)
new_compare24(vyw85, vyw86, vyw87, vyw88, vyw89, vyw90, False, cdg, app(app(ty_@2, cfa), cfb), ccg) → new_lt(vyw86, vyw89, cfa, cfb)
new_compare21(Just(vyw600), Just(vyw610), False, app(ty_Maybe, app(app(ty_@2, bcc), bcd)), bhd) → new_ltEs(vyw600, vyw610, bcc, bcd)
new_compare24(vyw85, vyw86, vyw87, vyw88, vyw89, vyw90, False, app(app(ty_Either, cda), cdb), ccf, ccg) → new_lt1(vyw85, vyw88, cda, cdb)
new_ltEs3(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), bdd, app(ty_Maybe, bfe), bfa) → new_lt2(vyw601, vyw611, bfe)
new_compare21(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), False, app(app(app(ty_@3, app(app(app(ty_@3, bgg), bgh), bha)), bde), bfa), bhd) → new_lt3(vyw600, vyw610, bgg, bgh, bha)
new_ltEs(@2(vyw600, vyw601), @2(vyw610, vyw611), h, app(app(ty_Either, bd), be)) → new_ltEs1(vyw601, vyw611, bd, be)
new_compare21(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), False, app(app(app(ty_@3, bdd), app(app(app(ty_@3, bff), bfg), bfh)), bfa), bhd) → new_lt3(vyw601, vyw611, bff, bfg, bfh)
new_compare2(Left(vyw40), Left(vyw300), bhb, bhc) → new_compare21(vyw40, vyw300, new_esEs6(vyw40, vyw300, bhb), bhb, bhc)
new_compare20(vyw98, vyw99, vyw100, vyw101, False, fb, app(app(ty_@2, fc), fd)) → new_ltEs(vyw99, vyw101, fc, fd)
new_compare21(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), False, app(app(app(ty_@3, bdd), bde), app(ty_[], bdh)), bhd) → new_ltEs0(vyw602, vyw612, bdh)
new_ltEs1(Right(vyw600), Right(vyw610), bba, app(ty_[], bbd)) → new_ltEs0(vyw600, vyw610, bbd)
new_compare23(vyw74, vyw75, False, app(app(app(ty_@3, cbf), cbg), cbh)) → new_ltEs3(vyw74, vyw75, cbf, cbg, cbh)
new_ltEs1(Left(vyw600), Left(vyw610), app(app(app(ty_@3, baf), bag), bah), baa) → new_ltEs3(vyw600, vyw610, baf, bag, bah)
new_compare20(vyw98, vyw99, vyw100, vyw101, False, app(app(app(ty_@3, hd), he), hf), gg) → new_lt3(vyw98, vyw100, hd, he, hf)
new_compare20(vyw98, vyw99, vyw100, vyw101, False, fb, app(ty_[], ff)) → new_ltEs0(vyw99, vyw101, ff)
new_primCompAux(vyw40, vyw300, vyw39, app(ty_Maybe, ed)) → new_compare3(vyw40, vyw300, ed)
new_primCompAux(vyw40, vyw300, vyw39, app(app(app(ty_@3, ee), ef), eg)) → new_compare4(vyw40, vyw300, ee, ef, eg)

The TRS R consists of the following rules:

new_esEs40(vyw400, vyw3000, ty_Int) → new_esEs20(vyw400, vyw3000)
new_esEs6(vyw40, vyw300, ty_@0) → new_esEs15(vyw40, vyw300)
new_esEs26(vyw401, vyw3001, ty_@0) → new_esEs15(vyw401, vyw3001)
new_esEs32(vyw400, vyw3000, ty_Double) → new_esEs24(vyw400, vyw3000)
new_esEs28(vyw601, vyw611, ty_Char) → new_esEs21(vyw601, vyw611)
new_lt21(vyw600, vyw610, ty_Float) → new_lt13(vyw600, vyw610)
new_esEs39(vyw401, vyw3001, ty_Ordering) → new_esEs19(vyw401, vyw3001)
new_ltEs19(vyw67, vyw68, ty_Ordering) → new_ltEs16(vyw67, vyw68)
new_compare8(vyw40, vyw300, ty_Ordering) → new_compare5(vyw40, vyw300)
new_ltEs20(vyw602, vyw612, ty_Int) → new_ltEs9(vyw602, vyw612)
new_lt4(vyw601, vyw611, app(ty_[], bfb)) → new_lt12(vyw601, vyw611, bfb)
new_lt22(vyw85, vyw88, ty_Int) → new_lt9(vyw85, vyw88)
new_ltEs16(GT, GT) → True
new_ltEs17(False, False) → True
new_esEs39(vyw401, vyw3001, ty_Float) → new_esEs25(vyw401, vyw3001)
new_esEs26(vyw401, vyw3001, app(app(ty_@2, dba), dbb)) → new_esEs12(vyw401, vyw3001, dba, dbb)
new_ltEs8(vyw60, vyw61) → new_fsEs(new_compare13(vyw60, vyw61))
new_ltEs22(vyw601, vyw611, ty_Int) → new_ltEs9(vyw601, vyw611)
new_ltEs24(vyw60, vyw61, app(app(ty_@2, h), cd)) → new_ltEs7(vyw60, vyw61, h, cd)
new_compare110(vyw121, vyw122, True, ebh, eca) → LT
new_esEs14(Just(vyw400), Just(vyw3000), ty_Bool) → new_esEs23(vyw400, vyw3000)
new_esEs27(vyw400, vyw3000, ty_Bool) → new_esEs23(vyw400, vyw3000)
new_lt4(vyw601, vyw611, app(app(ty_Either, bfc), bfd)) → new_lt15(vyw601, vyw611, bfc, bfd)
new_lt22(vyw85, vyw88, app(ty_Ratio, fda)) → new_lt6(vyw85, vyw88, fda)
new_lt20(vyw98, vyw100, ty_Char) → new_lt11(vyw98, vyw100)
new_esEs8(vyw40, vyw300, ty_Integer) → new_esEs16(vyw40, vyw300)
new_esEs22(Left(vyw400), Left(vyw3000), app(ty_Ratio, fag), egc) → new_esEs13(vyw400, vyw3000, fag)
new_lt23(vyw86, vyw89, ty_Double) → new_lt10(vyw86, vyw89)
new_esEs40(vyw400, vyw3000, app(app(ty_Either, fgh), fha)) → new_esEs22(vyw400, vyw3000, fgh, fha)
new_esEs6(vyw40, vyw300, ty_Integer) → new_esEs16(vyw40, vyw300)
new_esEs28(vyw601, vyw611, ty_Float) → new_esEs25(vyw601, vyw611)
new_ltEs16(LT, GT) → True
new_esEs27(vyw400, vyw3000, ty_Ordering) → new_esEs19(vyw400, vyw3000)
new_esEs11(vyw40, vyw300, ty_@0) → new_esEs15(vyw40, vyw300)
new_ltEs15(Just(vyw600), Just(vyw610), app(ty_Ratio, ede)) → new_ltEs6(vyw600, vyw610, ede)
new_lt4(vyw601, vyw611, ty_Double) → new_lt10(vyw601, vyw611)
new_esEs39(vyw401, vyw3001, app(app(ty_Either, fff), ffg)) → new_esEs22(vyw401, vyw3001, fff, ffg)
new_ltEs14(Right(vyw600), Right(vyw610), bba, app(ty_[], bbd)) → new_ltEs11(vyw600, vyw610, bbd)
new_ltEs21(vyw99, vyw101, ty_Char) → new_ltEs10(vyw99, vyw101)
new_esEs32(vyw400, vyw3000, ty_Char) → new_esEs21(vyw400, vyw3000)
new_lt5(vyw600, vyw610, ty_Ordering) → new_lt17(vyw600, vyw610)
new_esEs40(vyw400, vyw3000, ty_Double) → new_esEs24(vyw400, vyw3000)
new_compare210(vyw60, vyw61, False, fhb, bhd) → new_compare110(vyw60, vyw61, new_ltEs24(vyw60, vyw61, fhb), fhb, bhd)
new_ltEs15(Just(vyw600), Just(vyw610), ty_Double) → new_ltEs4(vyw600, vyw610)
new_primMulNat0(Zero, Zero) → Zero
new_lt22(vyw85, vyw88, app(app(ty_@2, ccd), cce)) → new_lt7(vyw85, vyw88, ccd, cce)
new_esEs32(vyw400, vyw3000, app(app(ty_Either, ehg), ehh)) → new_esEs22(vyw400, vyw3000, ehg, ehh)
new_esEs38(vyw402, vyw3002, ty_Bool) → new_esEs23(vyw402, vyw3002)
new_ltEs20(vyw602, vyw612, ty_Float) → new_ltEs12(vyw602, vyw612)
new_ltEs12(vyw60, vyw61) → new_fsEs(new_compare15(vyw60, vyw61))
new_esEs32(vyw400, vyw3000, ty_@0) → new_esEs15(vyw400, vyw3000)
new_esEs37(vyw85, vyw88, app(ty_[], cch)) → new_esEs18(vyw85, vyw88, cch)
new_sr(Integer(vyw400), Integer(vyw3010)) → Integer(new_primMulInt(vyw400, vyw3010))
new_esEs4(vyw41, vyw301, ty_Char) → new_esEs21(vyw41, vyw301)
new_esEs4(vyw41, vyw301, ty_Ordering) → new_esEs19(vyw41, vyw301)
new_ltEs15(Nothing, Just(vyw610), edd) → True
new_esEs9(vyw42, vyw302, ty_@0) → new_esEs15(vyw42, vyw302)
new_compare25(vyw74, vyw75, True, dde) → EQ
new_ltEs19(vyw67, vyw68, app(ty_Maybe, cac)) → new_ltEs15(vyw67, vyw68, cac)
new_esEs7(vyw40, vyw300, ty_Double) → new_esEs24(vyw40, vyw300)
new_esEs28(vyw601, vyw611, app(ty_Maybe, bfe)) → new_esEs14(vyw601, vyw611, bfe)
new_esEs14(Just(vyw400), Just(vyw3000), ty_Integer) → new_esEs16(vyw400, vyw3000)
new_esEs18(:(vyw400, vyw401), :(vyw3000, vyw3001), ega) → new_asAs(new_esEs32(vyw400, vyw3000, ega), new_esEs18(vyw401, vyw3001, ega))
new_esEs37(vyw85, vyw88, app(ty_Maybe, cdc)) → new_esEs14(vyw85, vyw88, cdc)
new_esEs22(Left(vyw400), Left(vyw3000), ty_Int, egc) → new_esEs20(vyw400, vyw3000)
new_esEs11(vyw40, vyw300, ty_Integer) → new_esEs16(vyw40, vyw300)
new_esEs27(vyw400, vyw3000, app(app(ty_@2, dcc), dcd)) → new_esEs12(vyw400, vyw3000, dcc, dcd)
new_esEs22(Left(vyw400), Left(vyw3000), app(ty_Maybe, fah), egc) → new_esEs14(vyw400, vyw3000, fah)
new_esEs22(Right(vyw400), Right(vyw3000), egb, app(ty_[], fcf)) → new_esEs18(vyw400, vyw3000, fcf)
new_esEs6(vyw40, vyw300, app(app(app(ty_@3, chh), daa), dab)) → new_esEs17(vyw40, vyw300, chh, daa, dab)
new_ltEs23(vyw87, vyw90, ty_Integer) → new_ltEs8(vyw87, vyw90)
new_esEs14(Just(vyw400), Just(vyw3000), app(app(app(ty_@3, ebb), ebc), ebd)) → new_esEs17(vyw400, vyw3000, ebb, ebc, ebd)
new_esEs22(Left(vyw400), Left(vyw3000), ty_Ordering, egc) → new_esEs19(vyw400, vyw3000)
new_compare19(True, False) → GT
new_esEs31(vyw98, vyw100, app(ty_Maybe, hc)) → new_esEs14(vyw98, vyw100, hc)
new_compare16(@0, @0) → EQ
new_compare9(:%(vyw40, vyw41), :%(vyw300, vyw301), ty_Int) → new_compare14(new_sr0(vyw40, vyw301), new_sr0(vyw300, vyw41))
new_esEs30(GT) → False
new_esEs37(vyw85, vyw88, app(app(ty_Either, cda), cdb)) → new_esEs22(vyw85, vyw88, cda, cdb)
new_esEs12(@2(vyw400, vyw401), @2(vyw3000, vyw3001), dag, dah) → new_asAs(new_esEs27(vyw400, vyw3000, dag), new_esEs26(vyw401, vyw3001, dah))
new_esEs17(@3(vyw400, vyw401, vyw402), @3(vyw3000, vyw3001, vyw3002), eff, efg, efh) → new_asAs(new_esEs40(vyw400, vyw3000, eff), new_asAs(new_esEs39(vyw401, vyw3001, efg), new_esEs38(vyw402, vyw3002, efh)))
new_ltEs5(vyw74, vyw75, ty_Char) → new_ltEs10(vyw74, vyw75)
new_esEs6(vyw40, vyw300, ty_Ordering) → new_esEs19(vyw40, vyw300)
new_esEs36(vyw86, vyw89, ty_Char) → new_esEs21(vyw86, vyw89)
new_ltEs19(vyw67, vyw68, ty_@0) → new_ltEs13(vyw67, vyw68)
new_esEs36(vyw86, vyw89, app(app(app(ty_@3, cfg), cfh), cga)) → new_esEs17(vyw86, vyw89, cfg, cfh, cga)
new_ltEs24(vyw60, vyw61, ty_Int) → new_ltEs9(vyw60, vyw61)
new_esEs40(vyw400, vyw3000, app(ty_Maybe, fgc)) → new_esEs14(vyw400, vyw3000, fgc)
new_esEs32(vyw400, vyw3000, app(ty_[], ehf)) → new_esEs18(vyw400, vyw3000, ehf)
new_esEs32(vyw400, vyw3000, ty_Ordering) → new_esEs19(vyw400, vyw3000)
new_compare0(:(vyw40, vyw41), :(vyw300, vyw301), df) → new_primCompAux0(vyw40, vyw300, new_compare0(vyw41, vyw301, df), df)
new_compare17(Right(vyw40), Right(vyw300), bhb, bhc) → new_compare26(vyw40, vyw300, new_esEs7(vyw40, vyw300, bhc), bhb, bhc)
new_lt4(vyw601, vyw611, ty_Char) → new_lt11(vyw601, vyw611)
new_esEs14(Just(vyw400), Just(vyw3000), app(ty_[], ebe)) → new_esEs18(vyw400, vyw3000, ebe)
new_compare113(vyw163, vyw164, vyw165, vyw166, vyw167, vyw168, True, edh, eea, eeb) → LT
new_esEs9(vyw42, vyw302, ty_Char) → new_esEs21(vyw42, vyw302)
new_esEs36(vyw86, vyw89, ty_Bool) → new_esEs23(vyw86, vyw89)
new_esEs5(vyw40, vyw300, ty_Float) → new_esEs25(vyw40, vyw300)
new_esEs5(vyw40, vyw300, app(ty_[], ega)) → new_esEs18(vyw40, vyw300, ega)
new_esEs40(vyw400, vyw3000, ty_Char) → new_esEs21(vyw400, vyw3000)
new_esEs37(vyw85, vyw88, ty_@0) → new_esEs15(vyw85, vyw88)
new_esEs27(vyw400, vyw3000, ty_Double) → new_esEs24(vyw400, vyw3000)
new_ltEs15(Just(vyw600), Just(vyw610), ty_Float) → new_ltEs12(vyw600, vyw610)
new_esEs33(vyw600, vyw610, ty_Char) → new_esEs21(vyw600, vyw610)
new_esEs9(vyw42, vyw302, app(ty_Maybe, dgb)) → new_esEs14(vyw42, vyw302, dgb)
new_esEs10(vyw41, vyw301, ty_Double) → new_esEs24(vyw41, vyw301)
new_lt11(vyw4, vyw30) → new_esEs30(new_compare6(vyw4, vyw30))
new_esEs27(vyw400, vyw3000, app(app(ty_Either, ddc), ddd)) → new_esEs22(vyw400, vyw3000, ddc, ddd)
new_esEs28(vyw601, vyw611, ty_Ordering) → new_esEs19(vyw601, vyw611)
new_esEs26(vyw401, vyw3001, app(app(app(ty_@3, dbe), dbf), dbg)) → new_esEs17(vyw401, vyw3001, dbe, dbf, dbg)
new_esEs31(vyw98, vyw100, ty_Char) → new_esEs21(vyw98, vyw100)
new_lt23(vyw86, vyw89, app(app(app(ty_@3, cfg), cfh), cga)) → new_lt19(vyw86, vyw89, cfg, cfh, cga)
new_lt4(vyw601, vyw611, app(ty_Maybe, bfe)) → new_lt16(vyw601, vyw611, bfe)
new_esEs9(vyw42, vyw302, app(ty_[], dgf)) → new_esEs18(vyw42, vyw302, dgf)
new_esEs38(vyw402, vyw3002, ty_Ordering) → new_esEs19(vyw402, vyw3002)
new_pePe(False, vyw177) → vyw177
new_esEs19(GT, GT) → True
new_esEs26(vyw401, vyw3001, ty_Float) → new_esEs25(vyw401, vyw3001)
new_esEs6(vyw40, vyw300, app(app(ty_@2, chd), che)) → new_esEs12(vyw40, vyw300, chd, che)
new_esEs22(Right(vyw400), Right(vyw3000), egb, ty_Bool) → new_esEs23(vyw400, vyw3000)
new_esEs39(vyw401, vyw3001, ty_@0) → new_esEs15(vyw401, vyw3001)
new_esEs18(:(vyw400, vyw401), [], ega) → False
new_esEs18([], :(vyw3000, vyw3001), ega) → False
new_esEs36(vyw86, vyw89, app(ty_[], cfc)) → new_esEs18(vyw86, vyw89, cfc)
new_esEs29(vyw600, vyw610, app(ty_Maybe, bgf)) → new_esEs14(vyw600, vyw610, bgf)
new_lt19(vyw4, vyw30, cca, ccb, ccc) → new_esEs30(new_compare27(vyw4, vyw30, cca, ccb, ccc))
new_esEs8(vyw40, vyw300, ty_Int) → new_esEs20(vyw40, vyw300)
new_ltEs23(vyw87, vyw90, ty_Bool) → new_ltEs17(vyw87, vyw90)
new_esEs39(vyw401, vyw3001, app(ty_Ratio, feh)) → new_esEs13(vyw401, vyw3001, feh)
new_esEs10(vyw41, vyw301, app(app(ty_@2, cgb), cgc)) → new_esEs12(vyw41, vyw301, cgb, cgc)
new_esEs36(vyw86, vyw89, ty_Double) → new_esEs24(vyw86, vyw89)
new_esEs37(vyw85, vyw88, app(ty_Ratio, fda)) → new_esEs13(vyw85, vyw88, fda)
new_ltEs15(Just(vyw600), Just(vyw610), ty_Bool) → new_ltEs17(vyw600, vyw610)
new_ltEs22(vyw601, vyw611, app(ty_Maybe, bf)) → new_ltEs15(vyw601, vyw611, bf)
new_esEs14(Just(vyw400), Just(vyw3000), app(app(ty_Either, ebf), ebg)) → new_esEs22(vyw400, vyw3000, ebf, ebg)
new_esEs9(vyw42, vyw302, app(app(ty_Either, dgg), dgh)) → new_esEs22(vyw42, vyw302, dgg, dgh)
new_esEs36(vyw86, vyw89, app(ty_Ratio, fdc)) → new_esEs13(vyw86, vyw89, fdc)
new_ltEs19(vyw67, vyw68, app(ty_[], bhh)) → new_ltEs11(vyw67, vyw68, bhh)
new_esEs24(Double(vyw400, vyw401), Double(vyw3000, vyw3001)) → new_esEs20(new_sr0(vyw400, vyw3000), new_sr0(vyw401, vyw3001))
new_ltEs23(vyw87, vyw90, app(app(ty_Either, cec), ced)) → new_ltEs14(vyw87, vyw90, cec, ced)
new_ltEs16(EQ, GT) → True
new_esEs6(vyw40, vyw300, app(ty_[], dac)) → new_esEs18(vyw40, vyw300, dac)
new_esEs31(vyw98, vyw100, app(app(ty_Either, ha), hb)) → new_esEs22(vyw98, vyw100, ha, hb)
new_esEs28(vyw601, vyw611, ty_@0) → new_esEs15(vyw601, vyw611)
new_ltEs21(vyw99, vyw101, ty_Double) → new_ltEs4(vyw99, vyw101)
new_lt22(vyw85, vyw88, app(ty_[], cch)) → new_lt12(vyw85, vyw88, cch)
new_lt4(vyw601, vyw611, ty_Int) → new_lt9(vyw601, vyw611)
new_ltEs21(vyw99, vyw101, ty_Int) → new_ltEs9(vyw99, vyw101)
new_lt4(vyw601, vyw611, ty_@0) → new_lt14(vyw601, vyw611)
new_compare18(Nothing, Just(vyw300), cag) → LT
new_lt20(vyw98, vyw100, ty_Ordering) → new_lt17(vyw98, vyw100)
new_ltEs22(vyw601, vyw611, ty_Ordering) → new_ltEs16(vyw601, vyw611)
new_ltEs13(vyw60, vyw61) → new_fsEs(new_compare16(vyw60, vyw61))
new_esEs27(vyw400, vyw3000, app(app(app(ty_@3, dcg), dch), dda)) → new_esEs17(vyw400, vyw3000, dcg, dch, dda)
new_esEs29(vyw600, vyw610, app(ty_Ratio, dff)) → new_esEs13(vyw600, vyw610, dff)
new_esEs31(vyw98, vyw100, app(app(app(ty_@3, hd), he), hf)) → new_esEs17(vyw98, vyw100, hd, he, hf)
new_compare18(Just(vyw40), Just(vyw300), cag) → new_compare25(vyw40, vyw300, new_esEs8(vyw40, vyw300, cag), cag)
new_esEs32(vyw400, vyw3000, ty_Integer) → new_esEs16(vyw400, vyw3000)
new_compare5(GT, EQ) → GT
new_esEs9(vyw42, vyw302, ty_Bool) → new_esEs23(vyw42, vyw302)
new_compare10(vyw136, vyw137, True, daf) → LT
new_lt20(vyw98, vyw100, app(app(ty_@2, ge), gf)) → new_lt7(vyw98, vyw100, ge, gf)
new_lt20(vyw98, vyw100, app(ty_Maybe, hc)) → new_lt16(vyw98, vyw100, hc)
new_esEs7(vyw40, vyw300, app(app(ty_@2, ecb), ecc)) → new_esEs12(vyw40, vyw300, ecb, ecc)
new_lt21(vyw600, vyw610, ty_Double) → new_lt10(vyw600, vyw610)
new_ltEs15(Just(vyw600), Just(vyw610), app(ty_Maybe, bch)) → new_ltEs15(vyw600, vyw610, bch)
new_esEs28(vyw601, vyw611, app(app(ty_Either, bfc), bfd)) → new_esEs22(vyw601, vyw611, bfc, bfd)
new_lt22(vyw85, vyw88, ty_Bool) → new_lt18(vyw85, vyw88)
new_primCmpNat0(Zero, Succ(vyw3000)) → LT
new_lt21(vyw600, vyw610, ty_Ordering) → new_lt17(vyw600, vyw610)
new_esEs22(Right(vyw400), Right(vyw3000), egb, ty_Char) → new_esEs21(vyw400, vyw3000)
new_compare18(Just(vyw40), Nothing, cag) → GT
new_compare7(Double(vyw40, vyw41), Double(vyw300, vyw301)) → new_compare14(new_sr0(vyw40, vyw300), new_sr0(vyw41, vyw301))
new_compare8(vyw40, vyw300, app(app(app(ty_@3, ee), ef), eg)) → new_compare27(vyw40, vyw300, ee, ef, eg)
new_ltEs20(vyw602, vyw612, app(app(ty_@2, bdf), bdg)) → new_ltEs7(vyw602, vyw612, bdf, bdg)
new_ltEs22(vyw601, vyw611, app(app(app(ty_@3, bg), bh), ca)) → new_ltEs18(vyw601, vyw611, bg, bh, ca)
new_primCompAux0(vyw40, vyw300, vyw39, df) → new_primCompAux00(vyw39, new_compare8(vyw40, vyw300, df))
new_esEs10(vyw41, vyw301, ty_Float) → new_esEs25(vyw41, vyw301)
new_lt5(vyw600, vyw610, ty_Integer) → new_lt8(vyw600, vyw610)
new_esEs4(vyw41, vyw301, ty_Integer) → new_esEs16(vyw41, vyw301)
new_ltEs5(vyw74, vyw75, app(app(ty_@2, cah), cba)) → new_ltEs7(vyw74, vyw75, cah, cba)
new_esEs37(vyw85, vyw88, ty_Float) → new_esEs25(vyw85, vyw88)
new_esEs5(vyw40, vyw300, ty_Double) → new_esEs24(vyw40, vyw300)
new_esEs38(vyw402, vyw3002, app(ty_[], fec)) → new_esEs18(vyw402, vyw3002, fec)
new_lt21(vyw600, vyw610, app(app(app(ty_@3, db), dc), dd)) → new_lt19(vyw600, vyw610, db, dc, dd)
new_lt5(vyw600, vyw610, app(app(app(ty_@3, bgg), bgh), bha)) → new_lt19(vyw600, vyw610, bgg, bgh, bha)
new_ltEs22(vyw601, vyw611, ty_Bool) → new_ltEs17(vyw601, vyw611)
new_esEs8(vyw40, vyw300, app(app(ty_Either, dfa), dfb)) → new_esEs22(vyw40, vyw300, dfa, dfb)
new_ltEs18(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), bdd, bde, bfa) → new_pePe(new_lt5(vyw600, vyw610, bdd), new_asAs(new_esEs29(vyw600, vyw610, bdd), new_pePe(new_lt4(vyw601, vyw611, bde), new_asAs(new_esEs28(vyw601, vyw611, bde), new_ltEs20(vyw602, vyw612, bfa)))))
new_compare19(False, True) → LT
new_esEs29(vyw600, vyw610, ty_Ordering) → new_esEs19(vyw600, vyw610)
new_ltEs24(vyw60, vyw61, app(ty_[], de)) → new_ltEs11(vyw60, vyw61, de)
new_compare10(vyw136, vyw137, False, daf) → GT
new_esEs28(vyw601, vyw611, ty_Integer) → new_esEs16(vyw601, vyw611)
new_esEs22(Left(vyw400), Left(vyw3000), app(app(ty_@2, fae), faf), egc) → new_esEs12(vyw400, vyw3000, fae, faf)
new_lt4(vyw601, vyw611, app(app(ty_@2, beg), beh)) → new_lt7(vyw601, vyw611, beg, beh)
new_esEs39(vyw401, vyw3001, app(app(app(ty_@3, ffb), ffc), ffd)) → new_esEs17(vyw401, vyw3001, ffb, ffc, ffd)
new_pePe(True, vyw177) → True
new_compare0([], [], df) → EQ
new_esEs37(vyw85, vyw88, ty_Int) → new_esEs20(vyw85, vyw88)
new_primEqNat0(Zero, Zero) → True
new_compare5(EQ, LT) → GT
new_esEs39(vyw401, vyw3001, app(app(ty_@2, fef), feg)) → new_esEs12(vyw401, vyw3001, fef, feg)
new_esEs7(vyw40, vyw300, ty_Float) → new_esEs25(vyw40, vyw300)
new_ltEs14(Left(vyw600), Left(vyw610), app(app(app(ty_@3, baf), bag), bah), baa) → new_ltEs18(vyw600, vyw610, baf, bag, bah)
new_lt5(vyw600, vyw610, ty_Bool) → new_lt18(vyw600, vyw610)
new_ltEs14(Left(vyw600), Left(vyw610), ty_Ordering, baa) → new_ltEs16(vyw600, vyw610)
new_esEs10(vyw41, vyw301, app(app(app(ty_@3, cgf), cgg), cgh)) → new_esEs17(vyw41, vyw301, cgf, cgg, cgh)
new_ltEs14(Right(vyw600), Right(vyw610), bba, ty_Double) → new_ltEs4(vyw600, vyw610)
new_lt22(vyw85, vyw88, ty_Double) → new_lt10(vyw85, vyw88)
new_esEs22(Left(vyw400), Left(vyw3000), app(app(app(ty_@3, fba), fbb), fbc), egc) → new_esEs17(vyw400, vyw3000, fba, fbb, fbc)
new_ltEs14(Right(vyw600), Right(vyw610), bba, ty_Integer) → new_ltEs8(vyw600, vyw610)
new_esEs26(vyw401, vyw3001, app(ty_Ratio, dbc)) → new_esEs13(vyw401, vyw3001, dbc)
new_esEs13(:%(vyw400, vyw401), :%(vyw3000, vyw3001), efe) → new_asAs(new_esEs35(vyw400, vyw3000, efe), new_esEs34(vyw401, vyw3001, efe))
new_esEs27(vyw400, vyw3000, app(ty_Ratio, dce)) → new_esEs13(vyw400, vyw3000, dce)
new_ltEs10(vyw60, vyw61) → new_fsEs(new_compare6(vyw60, vyw61))
new_esEs39(vyw401, vyw3001, app(ty_[], ffe)) → new_esEs18(vyw401, vyw3001, ffe)
new_esEs23(False, False) → True
new_ltEs14(Right(vyw600), Right(vyw610), bba, app(ty_Maybe, bbg)) → new_ltEs15(vyw600, vyw610, bbg)
new_ltEs16(EQ, LT) → False
new_lt5(vyw600, vyw610, app(ty_[], bgc)) → new_lt12(vyw600, vyw610, bgc)
new_compare9(:%(vyw40, vyw41), :%(vyw300, vyw301), ty_Integer) → new_compare13(new_sr(vyw40, vyw301), new_sr(vyw300, vyw41))
new_ltEs14(Right(vyw600), Right(vyw610), bba, ty_Ordering) → new_ltEs16(vyw600, vyw610)
new_compare29(vyw98, vyw99, vyw100, vyw101, False, fb, gg) → new_compare114(vyw98, vyw99, vyw100, vyw101, new_lt20(vyw98, vyw100, fb), new_asAs(new_esEs31(vyw98, vyw100, fb), new_ltEs21(vyw99, vyw101, gg)), fb, gg)
new_ltEs24(vyw60, vyw61, ty_Char) → new_ltEs10(vyw60, vyw61)
new_esEs32(vyw400, vyw3000, app(app(app(ty_@3, ehc), ehd), ehe)) → new_esEs17(vyw400, vyw3000, ehc, ehd, ehe)
new_ltEs24(vyw60, vyw61, app(app(app(ty_@3, bdd), bde), bfa)) → new_ltEs18(vyw60, vyw61, bdd, bde, bfa)
new_compare110(vyw121, vyw122, False, ebh, eca) → GT
new_esEs9(vyw42, vyw302, app(app(app(ty_@3, dgc), dgd), dge)) → new_esEs17(vyw42, vyw302, dgc, dgd, dge)
new_esEs31(vyw98, vyw100, ty_Int) → new_esEs20(vyw98, vyw100)
new_esEs40(vyw400, vyw3000, app(ty_[], fgg)) → new_esEs18(vyw400, vyw3000, fgg)
new_ltEs16(GT, EQ) → False
new_esEs38(vyw402, vyw3002, app(ty_Ratio, fdf)) → new_esEs13(vyw402, vyw3002, fdf)
new_esEs26(vyw401, vyw3001, ty_Ordering) → new_esEs19(vyw401, vyw3001)
new_esEs27(vyw400, vyw3000, ty_Float) → new_esEs25(vyw400, vyw3000)
new_esEs14(Just(vyw400), Just(vyw3000), app(ty_Maybe, eba)) → new_esEs14(vyw400, vyw3000, eba)
new_esEs5(vyw40, vyw300, ty_Bool) → new_esEs23(vyw40, vyw300)
new_esEs14(Just(vyw400), Just(vyw3000), ty_Float) → new_esEs25(vyw400, vyw3000)
new_esEs22(Right(vyw400), Right(vyw3000), egb, ty_Ordering) → new_esEs19(vyw400, vyw3000)
new_ltEs19(vyw67, vyw68, ty_Char) → new_ltEs10(vyw67, vyw68)
new_primPlusNat0(Succ(vyw1780), vyw30100) → Succ(Succ(new_primPlusNat1(vyw1780, vyw30100)))
new_ltEs15(Just(vyw600), Just(vyw610), ty_Char) → new_ltEs10(vyw600, vyw610)
new_esEs10(vyw41, vyw301, ty_Int) → new_esEs20(vyw41, vyw301)
new_lt5(vyw600, vyw610, app(ty_Ratio, dff)) → new_lt6(vyw600, vyw610, dff)
new_compare8(vyw40, vyw300, app(ty_Maybe, ed)) → new_compare18(vyw40, vyw300, ed)
new_ltEs15(Just(vyw600), Just(vyw610), ty_Int) → new_ltEs9(vyw600, vyw610)
new_esEs7(vyw40, vyw300, ty_Bool) → new_esEs23(vyw40, vyw300)
new_esEs21(Char(vyw400), Char(vyw3000)) → new_primEqNat0(vyw400, vyw3000)
new_esEs11(vyw40, vyw300, ty_Double) → new_esEs24(vyw40, vyw300)
new_lt4(vyw601, vyw611, app(app(app(ty_@3, bff), bfg), bfh)) → new_lt19(vyw601, vyw611, bff, bfg, bfh)
new_ltEs14(Right(vyw600), Right(vyw610), bba, app(app(ty_@2, bbb), bbc)) → new_ltEs7(vyw600, vyw610, bbb, bbc)
new_esEs29(vyw600, vyw610, ty_Double) → new_esEs24(vyw600, vyw610)
new_esEs14(Just(vyw400), Nothing, eae) → False
new_esEs14(Nothing, Just(vyw3000), eae) → False
new_primEqInt(Neg(Succ(vyw4000)), Neg(Succ(vyw30000))) → new_primEqNat0(vyw4000, vyw30000)
new_esEs26(vyw401, vyw3001, ty_Double) → new_esEs24(vyw401, vyw3001)
new_esEs40(vyw400, vyw3000, app(app(app(ty_@3, fgd), fge), fgf)) → new_esEs17(vyw400, vyw3000, fgd, fge, fgf)
new_esEs10(vyw41, vyw301, ty_Ordering) → new_esEs19(vyw41, vyw301)
new_esEs36(vyw86, vyw89, app(ty_Maybe, cff)) → new_esEs14(vyw86, vyw89, cff)
new_esEs4(vyw41, vyw301, ty_Bool) → new_esEs23(vyw41, vyw301)
new_ltEs19(vyw67, vyw68, ty_Integer) → new_ltEs8(vyw67, vyw68)
new_ltEs16(LT, EQ) → True
new_ltEs24(vyw60, vyw61, ty_Double) → new_ltEs4(vyw60, vyw61)
new_esEs9(vyw42, vyw302, ty_Integer) → new_esEs16(vyw42, vyw302)
new_esEs19(EQ, EQ) → True
new_primPlusNat1(Succ(vyw17800), Zero) → Succ(vyw17800)
new_primPlusNat1(Zero, Succ(vyw301000)) → Succ(vyw301000)
new_esEs10(vyw41, vyw301, app(ty_[], cha)) → new_esEs18(vyw41, vyw301, cha)
new_esEs8(vyw40, vyw300, ty_@0) → new_esEs15(vyw40, vyw300)
new_esEs8(vyw40, vyw300, ty_Float) → new_esEs25(vyw40, vyw300)
new_esEs7(vyw40, vyw300, ty_Integer) → new_esEs16(vyw40, vyw300)
new_lt23(vyw86, vyw89, ty_Int) → new_lt9(vyw86, vyw89)
new_lt23(vyw86, vyw89, ty_@0) → new_lt14(vyw86, vyw89)
new_ltEs14(Right(vyw600), Left(vyw610), bba, baa) → False
new_ltEs17(True, False) → False
new_compare111(vyw148, vyw149, vyw150, vyw151, True, edf, edg) → LT
new_ltEs21(vyw99, vyw101, app(ty_Ratio, egd)) → new_ltEs6(vyw99, vyw101, egd)
new_lt22(vyw85, vyw88, app(app(ty_Either, cda), cdb)) → new_lt15(vyw85, vyw88, cda, cdb)
new_esEs5(vyw40, vyw300, ty_Integer) → new_esEs16(vyw40, vyw300)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_esEs33(vyw600, vyw610, app(ty_Ratio, fab)) → new_esEs13(vyw600, vyw610, fab)
new_esEs7(vyw40, vyw300, ty_Int) → new_esEs20(vyw40, vyw300)
new_ltEs22(vyw601, vyw611, app(ty_[], bc)) → new_ltEs11(vyw601, vyw611, bc)
new_esEs39(vyw401, vyw3001, ty_Double) → new_esEs24(vyw401, vyw3001)
new_esEs30(EQ) → False
new_ltEs22(vyw601, vyw611, app(app(ty_Either, bd), be)) → new_ltEs14(vyw601, vyw611, bd, be)
new_lt21(vyw600, vyw610, app(app(ty_Either, cf), cg)) → new_lt15(vyw600, vyw610, cf, cg)
new_ltEs14(Left(vyw600), Left(vyw610), ty_Bool, baa) → new_ltEs17(vyw600, vyw610)
new_lt5(vyw600, vyw610, app(app(ty_@2, bga), bgb)) → new_lt7(vyw600, vyw610, bga, bgb)
new_esEs8(vyw40, vyw300, app(ty_Ratio, dec)) → new_esEs13(vyw40, vyw300, dec)
new_compare26(vyw67, vyw68, False, bhe, ddg) → new_compare11(vyw67, vyw68, new_ltEs19(vyw67, vyw68, ddg), bhe, ddg)
new_primEqInt(Neg(Zero), Neg(Succ(vyw30000))) → False
new_primEqInt(Neg(Succ(vyw4000)), Neg(Zero)) → False
new_lt9(vyw4, vyw30) → new_esEs30(new_compare14(vyw4, vyw30))
new_lt20(vyw98, vyw100, ty_Integer) → new_lt8(vyw98, vyw100)
new_ltEs15(Just(vyw600), Just(vyw610), app(app(ty_@2, bcc), bcd)) → new_ltEs7(vyw600, vyw610, bcc, bcd)
new_compare26(vyw67, vyw68, True, bhe, ddg) → EQ
new_esEs39(vyw401, vyw3001, ty_Bool) → new_esEs23(vyw401, vyw3001)
new_ltEs9(vyw60, vyw61) → new_fsEs(new_compare14(vyw60, vyw61))
new_esEs7(vyw40, vyw300, app(ty_Ratio, ecd)) → new_esEs13(vyw40, vyw300, ecd)
new_esEs28(vyw601, vyw611, ty_Double) → new_esEs24(vyw601, vyw611)
new_ltEs21(vyw99, vyw101, app(app(ty_Either, fg), fh)) → new_ltEs14(vyw99, vyw101, fg, fh)
new_lt23(vyw86, vyw89, app(app(ty_Either, cfd), cfe)) → new_lt15(vyw86, vyw89, cfd, cfe)
new_ltEs24(vyw60, vyw61, app(ty_Maybe, edd)) → new_ltEs15(vyw60, vyw61, edd)
new_fsEs(vyw172) → new_not(new_esEs19(vyw172, GT))
new_esEs7(vyw40, vyw300, ty_Ordering) → new_esEs19(vyw40, vyw300)
new_esEs14(Just(vyw400), Just(vyw3000), ty_Char) → new_esEs21(vyw400, vyw3000)
new_ltEs21(vyw99, vyw101, app(ty_[], ff)) → new_ltEs11(vyw99, vyw101, ff)
new_esEs33(vyw600, vyw610, app(app(ty_Either, cf), cg)) → new_esEs22(vyw600, vyw610, cf, cg)
new_esEs26(vyw401, vyw3001, app(ty_[], dbh)) → new_esEs18(vyw401, vyw3001, dbh)
new_ltEs23(vyw87, vyw90, ty_Char) → new_ltEs10(vyw87, vyw90)
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_compare14(vyw4, vyw30) → new_primCmpInt(vyw4, vyw30)
new_ltEs16(GT, LT) → False
new_ltEs14(Right(vyw600), Right(vyw610), bba, ty_@0) → new_ltEs13(vyw600, vyw610)
new_ltEs14(Left(vyw600), Left(vyw610), ty_Int, baa) → new_ltEs9(vyw600, vyw610)
new_primCmpNat0(Succ(vyw400), Succ(vyw3000)) → new_primCmpNat0(vyw400, vyw3000)
new_esEs19(LT, EQ) → False
new_esEs19(EQ, LT) → False
new_esEs14(Just(vyw400), Just(vyw3000), ty_Int) → new_esEs20(vyw400, vyw3000)
new_esEs26(vyw401, vyw3001, ty_Integer) → new_esEs16(vyw401, vyw3001)
new_esEs22(Left(vyw400), Left(vyw3000), app(ty_[], fbd), egc) → new_esEs18(vyw400, vyw3000, fbd)
new_esEs37(vyw85, vyw88, ty_Double) → new_esEs24(vyw85, vyw88)
new_esEs38(vyw402, vyw3002, app(app(ty_Either, fed), fee)) → new_esEs22(vyw402, vyw3002, fed, fee)
new_primEqInt(Pos(Succ(vyw4000)), Pos(Succ(vyw30000))) → new_primEqNat0(vyw4000, vyw30000)
new_ltEs24(vyw60, vyw61, ty_@0) → new_ltEs13(vyw60, vyw61)
new_ltEs5(vyw74, vyw75, ty_Ordering) → new_ltEs16(vyw74, vyw75)
new_esEs31(vyw98, vyw100, ty_Bool) → new_esEs23(vyw98, vyw100)
new_lt20(vyw98, vyw100, app(ty_[], gh)) → new_lt12(vyw98, vyw100, gh)
new_esEs30(LT) → True
new_esEs22(Right(vyw400), Right(vyw3000), egb, app(ty_Ratio, fca)) → new_esEs13(vyw400, vyw3000, fca)
new_compare8(vyw40, vyw300, app(app(ty_Either, eb), ec)) → new_compare17(vyw40, vyw300, eb, ec)
new_primEqNat0(Succ(vyw4000), Succ(vyw30000)) → new_primEqNat0(vyw4000, vyw30000)
new_esEs31(vyw98, vyw100, ty_Float) → new_esEs25(vyw98, vyw100)
new_ltEs5(vyw74, vyw75, ty_Integer) → new_ltEs8(vyw74, vyw75)
new_ltEs5(vyw74, vyw75, ty_Bool) → new_ltEs17(vyw74, vyw75)
new_esEs26(vyw401, vyw3001, ty_Int) → new_esEs20(vyw401, vyw3001)
new_ltEs5(vyw74, vyw75, app(ty_Ratio, ddf)) → new_ltEs6(vyw74, vyw75, ddf)
new_lt4(vyw601, vyw611, app(ty_Ratio, dfe)) → new_lt6(vyw601, vyw611, dfe)
new_compare8(vyw40, vyw300, app(app(ty_@2, dg), dh)) → new_compare12(vyw40, vyw300, dg, dh)
new_primCompAux00(vyw54, LT) → LT
new_ltEs19(vyw67, vyw68, app(app(app(ty_@3, cad), cae), caf)) → new_ltEs18(vyw67, vyw68, cad, cae, caf)
new_primCmpInt(Neg(Succ(vyw400)), Neg(vyw300)) → new_primCmpNat0(vyw300, Succ(vyw400))
new_esEs11(vyw40, vyw300, app(ty_Maybe, dhd)) → new_esEs14(vyw40, vyw300, dhd)
new_lt17(vyw4, vyw30) → new_esEs30(new_compare5(vyw4, vyw30))
new_esEs32(vyw400, vyw3000, app(ty_Maybe, ehb)) → new_esEs14(vyw400, vyw3000, ehb)
new_esEs37(vyw85, vyw88, ty_Integer) → new_esEs16(vyw85, vyw88)
new_ltEs5(vyw74, vyw75, app(app(app(ty_@3, cbf), cbg), cbh)) → new_ltEs18(vyw74, vyw75, cbf, cbg, cbh)
new_esEs36(vyw86, vyw89, app(app(ty_Either, cfd), cfe)) → new_esEs22(vyw86, vyw89, cfd, cfe)
new_esEs38(vyw402, vyw3002, app(ty_Maybe, fdg)) → new_esEs14(vyw402, vyw3002, fdg)
new_esEs5(vyw40, vyw300, ty_Int) → new_esEs20(vyw40, vyw300)
new_esEs40(vyw400, vyw3000, ty_@0) → new_esEs15(vyw400, vyw3000)
new_primEqInt(Pos(Zero), Pos(Succ(vyw30000))) → False
new_primEqInt(Pos(Succ(vyw4000)), Pos(Zero)) → False
new_esEs11(vyw40, vyw300, app(ty_[], dhh)) → new_esEs18(vyw40, vyw300, dhh)
new_ltEs5(vyw74, vyw75, ty_@0) → new_ltEs13(vyw74, vyw75)
new_lt13(vyw4, vyw30) → new_esEs30(new_compare15(vyw4, vyw30))
new_esEs26(vyw401, vyw3001, ty_Char) → new_esEs21(vyw401, vyw3001)
new_lt21(vyw600, vyw610, app(app(ty_@2, cb), cc)) → new_lt7(vyw600, vyw610, cb, cc)
new_esEs5(vyw40, vyw300, app(ty_Ratio, efe)) → new_esEs13(vyw40, vyw300, efe)
new_esEs5(vyw40, vyw300, ty_Ordering) → new_esEs19(vyw40, vyw300)
new_ltEs5(vyw74, vyw75, ty_Double) → new_ltEs4(vyw74, vyw75)
new_primCmpNat0(Zero, Zero) → EQ
new_lt22(vyw85, vyw88, ty_Char) → new_lt11(vyw85, vyw88)
new_lt5(vyw600, vyw610, app(app(ty_Either, bgd), bge)) → new_lt15(vyw600, vyw610, bgd, bge)
new_primCmpNat0(Succ(vyw400), Zero) → GT
new_esEs28(vyw601, vyw611, app(app(ty_@2, beg), beh)) → new_esEs12(vyw601, vyw611, beg, beh)
new_esEs38(vyw402, vyw3002, ty_@0) → new_esEs15(vyw402, vyw3002)
new_lt5(vyw600, vyw610, ty_Double) → new_lt10(vyw600, vyw610)
new_lt20(vyw98, vyw100, app(ty_Ratio, ege)) → new_lt6(vyw98, vyw100, ege)
new_primCmpInt(Neg(Zero), Pos(Succ(vyw3000))) → LT
new_esEs34(vyw401, vyw3001, ty_Integer) → new_esEs16(vyw401, vyw3001)
new_compare11(vyw128, vyw129, True, fac, fad) → LT
new_ltEs21(vyw99, vyw101, ty_Ordering) → new_ltEs16(vyw99, vyw101)
new_ltEs22(vyw601, vyw611, ty_Char) → new_ltEs10(vyw601, vyw611)
new_esEs8(vyw40, vyw300, app(ty_[], deh)) → new_esEs18(vyw40, vyw300, deh)
new_lt21(vyw600, vyw610, ty_Integer) → new_lt8(vyw600, vyw610)
new_primPlusNat1(Succ(vyw17800), Succ(vyw301000)) → Succ(Succ(new_primPlusNat1(vyw17800, vyw301000)))
new_esEs37(vyw85, vyw88, app(app(ty_@2, ccd), cce)) → new_esEs12(vyw85, vyw88, ccd, cce)
new_esEs23(True, True) → True
new_esEs37(vyw85, vyw88, app(app(app(ty_@3, cdd), cde), cdf)) → new_esEs17(vyw85, vyw88, cdd, cde, cdf)
new_primEqInt(Neg(Succ(vyw4000)), Pos(vyw3000)) → False
new_primEqInt(Pos(Succ(vyw4000)), Neg(vyw3000)) → False
new_esEs7(vyw40, vyw300, app(app(ty_Either, edb), edc)) → new_esEs22(vyw40, vyw300, edb, edc)
new_compare28(vyw85, vyw86, vyw87, vyw88, vyw89, vyw90, False, cdg, ccf, ccg) → new_compare112(vyw85, vyw86, vyw87, vyw88, vyw89, vyw90, new_lt22(vyw85, vyw88, cdg), new_asAs(new_esEs37(vyw85, vyw88, cdg), new_pePe(new_lt23(vyw86, vyw89, ccf), new_asAs(new_esEs36(vyw86, vyw89, ccf), new_ltEs23(vyw87, vyw90, ccg)))), cdg, ccf, ccg)
new_esEs14(Just(vyw400), Just(vyw3000), app(app(ty_@2, eaf), eag)) → new_esEs12(vyw400, vyw3000, eaf, eag)
new_esEs10(vyw41, vyw301, ty_Bool) → new_esEs23(vyw41, vyw301)
new_ltEs14(Right(vyw600), Right(vyw610), bba, ty_Char) → new_ltEs10(vyw600, vyw610)
new_esEs36(vyw86, vyw89, ty_Float) → new_esEs25(vyw86, vyw89)
new_esEs38(vyw402, vyw3002, app(app(ty_@2, fdd), fde)) → new_esEs12(vyw402, vyw3002, fdd, fde)
new_ltEs14(Left(vyw600), Left(vyw610), app(app(ty_@2, hg), hh), baa) → new_ltEs7(vyw600, vyw610, hg, hh)
new_esEs22(Left(vyw400), Left(vyw3000), ty_Char, egc) → new_esEs21(vyw400, vyw3000)
new_compare113(vyw163, vyw164, vyw165, vyw166, vyw167, vyw168, False, edh, eea, eeb) → GT
new_esEs7(vyw40, vyw300, app(app(app(ty_@3, ecf), ecg), ech)) → new_esEs17(vyw40, vyw300, ecf, ecg, ech)
new_lt23(vyw86, vyw89, ty_Bool) → new_lt18(vyw86, vyw89)
new_ltEs20(vyw602, vyw612, app(ty_Maybe, bec)) → new_ltEs15(vyw602, vyw612, bec)
new_esEs22(Left(vyw400), Left(vyw3000), ty_@0, egc) → new_esEs15(vyw400, vyw3000)
new_ltEs14(Left(vyw600), Left(vyw610), ty_Float, baa) → new_ltEs12(vyw600, vyw610)
new_primEqInt(Neg(Zero), Pos(Succ(vyw30000))) → False
new_primEqInt(Pos(Zero), Neg(Succ(vyw30000))) → False
new_primCompAux00(vyw54, EQ) → vyw54
new_esEs31(vyw98, vyw100, ty_Integer) → new_esEs16(vyw98, vyw100)
new_primCmpInt(Pos(Zero), Pos(Succ(vyw3000))) → new_primCmpNat0(Zero, Succ(vyw3000))
new_esEs23(True, False) → False
new_esEs23(False, True) → False
new_ltEs14(Right(vyw600), Right(vyw610), bba, app(app(app(ty_@3, bbh), bca), bcb)) → new_ltEs18(vyw600, vyw610, bbh, bca, bcb)
new_ltEs16(EQ, EQ) → True
new_esEs11(vyw40, vyw300, ty_Float) → new_esEs25(vyw40, vyw300)
new_compare19(False, False) → EQ
new_ltEs20(vyw602, vyw612, ty_Double) → new_ltEs4(vyw602, vyw612)
new_ltEs5(vyw74, vyw75, app(app(ty_Either, cbc), cbd)) → new_ltEs14(vyw74, vyw75, cbc, cbd)
new_compare8(vyw40, vyw300, app(ty_[], ea)) → new_compare0(vyw40, vyw300, ea)
new_esEs33(vyw600, vyw610, ty_Bool) → new_esEs23(vyw600, vyw610)
new_lt4(vyw601, vyw611, ty_Integer) → new_lt8(vyw601, vyw611)
new_esEs4(vyw41, vyw301, ty_Double) → new_esEs24(vyw41, vyw301)
new_lt4(vyw601, vyw611, ty_Float) → new_lt13(vyw601, vyw611)
new_esEs22(Right(vyw400), Right(vyw3000), egb, app(app(app(ty_@3, fcc), fcd), fce)) → new_esEs17(vyw400, vyw3000, fcc, fcd, fce)
new_esEs11(vyw40, vyw300, ty_Ordering) → new_esEs19(vyw40, vyw300)
new_not(False) → True
new_esEs33(vyw600, vyw610, app(app(app(ty_@3, db), dc), dd)) → new_esEs17(vyw600, vyw610, db, dc, dd)
new_ltEs11(vyw60, vyw61, de) → new_fsEs(new_compare0(vyw60, vyw61, de))
new_compare8(vyw40, vyw300, app(ty_Ratio, dfc)) → new_compare9(vyw40, vyw300, dfc)
new_esEs22(Left(vyw400), Left(vyw3000), ty_Integer, egc) → new_esEs16(vyw400, vyw3000)
new_esEs34(vyw401, vyw3001, ty_Int) → new_esEs20(vyw401, vyw3001)
new_lt8(vyw4, vyw30) → new_esEs30(new_compare13(vyw4, vyw30))
new_ltEs19(vyw67, vyw68, ty_Double) → new_ltEs4(vyw67, vyw68)
new_esEs22(Right(vyw400), Right(vyw3000), egb, ty_Int) → new_esEs20(vyw400, vyw3000)
new_lt22(vyw85, vyw88, app(ty_Maybe, cdc)) → new_lt16(vyw85, vyw88, cdc)
new_esEs29(vyw600, vyw610, ty_Bool) → new_esEs23(vyw600, vyw610)
new_esEs8(vyw40, vyw300, app(ty_Maybe, ded)) → new_esEs14(vyw40, vyw300, ded)
new_primPlusNat0(Zero, vyw30100) → Succ(vyw30100)
new_primCmpInt(Pos(Succ(vyw400)), Pos(vyw300)) → new_primCmpNat0(Succ(vyw400), vyw300)
new_compare210(vyw60, vyw61, True, fhb, bhd) → EQ
new_lt21(vyw600, vyw610, app(ty_[], ce)) → new_lt12(vyw600, vyw610, ce)
new_ltEs21(vyw99, vyw101, app(ty_Maybe, ga)) → new_ltEs15(vyw99, vyw101, ga)
new_esEs8(vyw40, vyw300, ty_Ordering) → new_esEs19(vyw40, vyw300)
new_compare29(vyw98, vyw99, vyw100, vyw101, True, fb, gg) → EQ
new_ltEs14(Right(vyw600), Right(vyw610), bba, app(ty_Ratio, ead)) → new_ltEs6(vyw600, vyw610, ead)
new_compare8(vyw40, vyw300, ty_Double) → new_compare7(vyw40, vyw300)
new_esEs39(vyw401, vyw3001, ty_Char) → new_esEs21(vyw401, vyw3001)
new_esEs4(vyw41, vyw301, app(app(app(ty_@3, eeg), eeh), efa)) → new_esEs17(vyw41, vyw301, eeg, eeh, efa)
new_esEs25(Float(vyw400, vyw401), Float(vyw3000, vyw3001)) → new_esEs20(new_sr0(vyw400, vyw3000), new_sr0(vyw401, vyw3001))
new_ltEs24(vyw60, vyw61, ty_Float) → new_ltEs12(vyw60, vyw61)
new_esEs31(vyw98, vyw100, ty_@0) → new_esEs15(vyw98, vyw100)
new_lt21(vyw600, vyw610, ty_@0) → new_lt14(vyw600, vyw610)
new_esEs22(Left(vyw400), Left(vyw3000), ty_Bool, egc) → new_esEs23(vyw400, vyw3000)
new_lt10(vyw4, vyw30) → new_esEs30(new_compare7(vyw4, vyw30))
new_ltEs22(vyw601, vyw611, app(ty_Ratio, faa)) → new_ltEs6(vyw601, vyw611, faa)
new_ltEs24(vyw60, vyw61, ty_Integer) → new_ltEs8(vyw60, vyw61)
new_ltEs14(Left(vyw600), Left(vyw610), ty_Integer, baa) → new_ltEs8(vyw600, vyw610)
new_esEs22(Left(vyw400), Left(vyw3000), app(app(ty_Either, fbe), fbf), egc) → new_esEs22(vyw400, vyw3000, fbe, fbf)
new_esEs11(vyw40, vyw300, ty_Char) → new_esEs21(vyw40, vyw300)
new_compare8(vyw40, vyw300, ty_Integer) → new_compare13(vyw40, vyw300)
new_ltEs22(vyw601, vyw611, ty_Double) → new_ltEs4(vyw601, vyw611)
new_lt22(vyw85, vyw88, ty_Ordering) → new_lt17(vyw85, vyw88)
new_compare0(:(vyw40, vyw41), [], df) → GT
new_esEs40(vyw400, vyw3000, app(app(ty_@2, ffh), fga)) → new_esEs12(vyw400, vyw3000, ffh, fga)
new_compare19(True, True) → EQ
new_ltEs5(vyw74, vyw75, ty_Float) → new_ltEs12(vyw74, vyw75)
new_esEs27(vyw400, vyw3000, app(ty_[], ddb)) → new_esEs18(vyw400, vyw3000, ddb)
new_ltEs23(vyw87, vyw90, app(ty_Ratio, fdb)) → new_ltEs6(vyw87, vyw90, fdb)
new_compare114(vyw148, vyw149, vyw150, vyw151, False, vyw153, edf, edg) → new_compare111(vyw148, vyw149, vyw150, vyw151, vyw153, edf, edg)
new_lt22(vyw85, vyw88, ty_Float) → new_lt13(vyw85, vyw88)
new_esEs6(vyw40, vyw300, ty_Char) → new_esEs21(vyw40, vyw300)
new_esEs19(LT, GT) → False
new_esEs19(GT, LT) → False
new_compare17(Left(vyw40), Right(vyw300), bhb, bhc) → LT
new_esEs33(vyw600, vyw610, ty_Integer) → new_esEs16(vyw600, vyw610)
new_esEs6(vyw40, vyw300, ty_Double) → new_esEs24(vyw40, vyw300)
new_compare11(vyw128, vyw129, False, fac, fad) → GT
new_ltEs24(vyw60, vyw61, app(app(ty_Either, bba), baa)) → new_ltEs14(vyw60, vyw61, bba, baa)
new_lt22(vyw85, vyw88, ty_Integer) → new_lt8(vyw85, vyw88)
new_primCmpInt(Pos(Succ(vyw400)), Neg(vyw300)) → GT
new_lt23(vyw86, vyw89, app(app(ty_@2, cfa), cfb)) → new_lt7(vyw86, vyw89, cfa, cfb)
new_lt23(vyw86, vyw89, app(ty_[], cfc)) → new_lt12(vyw86, vyw89, cfc)
new_ltEs19(vyw67, vyw68, ty_Int) → new_ltEs9(vyw67, vyw68)
new_esEs11(vyw40, vyw300, app(app(app(ty_@3, dhe), dhf), dhg)) → new_esEs17(vyw40, vyw300, dhe, dhf, dhg)
new_esEs27(vyw400, vyw3000, ty_@0) → new_esEs15(vyw400, vyw3000)
new_esEs22(Right(vyw400), Right(vyw3000), egb, ty_Integer) → new_esEs16(vyw400, vyw3000)
new_ltEs23(vyw87, vyw90, app(ty_Maybe, cee)) → new_ltEs15(vyw87, vyw90, cee)
new_esEs20(vyw40, vyw300) → new_primEqInt(vyw40, vyw300)
new_ltEs14(Right(vyw600), Right(vyw610), bba, ty_Bool) → new_ltEs17(vyw600, vyw610)
new_compare114(vyw148, vyw149, vyw150, vyw151, True, vyw153, edf, edg) → new_compare111(vyw148, vyw149, vyw150, vyw151, True, edf, edg)
new_esEs6(vyw40, vyw300, ty_Bool) → new_esEs23(vyw40, vyw300)
new_esEs31(vyw98, vyw100, app(ty_[], gh)) → new_esEs18(vyw98, vyw100, gh)
new_primMulInt(Pos(vyw400), Pos(vyw3010)) → Pos(new_primMulNat0(vyw400, vyw3010))
new_compare17(Right(vyw40), Left(vyw300), bhb, bhc) → GT
new_ltEs20(vyw602, vyw612, ty_Bool) → new_ltEs17(vyw602, vyw612)
new_primMulInt(Neg(vyw400), Neg(vyw3010)) → Pos(new_primMulNat0(vyw400, vyw3010))
new_ltEs19(vyw67, vyw68, app(ty_Ratio, ddh)) → new_ltEs6(vyw67, vyw68, ddh)
new_esEs9(vyw42, vyw302, app(ty_Ratio, dga)) → new_esEs13(vyw42, vyw302, dga)
new_lt20(vyw98, vyw100, ty_@0) → new_lt14(vyw98, vyw100)
new_ltEs23(vyw87, vyw90, app(app(ty_@2, cdh), cea)) → new_ltEs7(vyw87, vyw90, cdh, cea)
new_esEs38(vyw402, vyw3002, ty_Char) → new_esEs21(vyw402, vyw3002)
new_lt14(vyw4, vyw30) → new_esEs30(new_compare16(vyw4, vyw30))
new_esEs9(vyw42, vyw302, ty_Double) → new_esEs24(vyw42, vyw302)
new_primEqNat0(Succ(vyw4000), Zero) → False
new_primEqNat0(Zero, Succ(vyw30000)) → False
new_ltEs4(vyw60, vyw61) → new_fsEs(new_compare7(vyw60, vyw61))
new_ltEs22(vyw601, vyw611, ty_@0) → new_ltEs13(vyw601, vyw611)
new_esEs7(vyw40, vyw300, ty_@0) → new_esEs15(vyw40, vyw300)
new_ltEs5(vyw74, vyw75, app(ty_[], cbb)) → new_ltEs11(vyw74, vyw75, cbb)
new_esEs22(Right(vyw400), Right(vyw3000), egb, ty_@0) → new_esEs15(vyw400, vyw3000)
new_esEs39(vyw401, vyw3001, ty_Int) → new_esEs20(vyw401, vyw3001)
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_esEs35(vyw400, vyw3000, ty_Integer) → new_esEs16(vyw400, vyw3000)
new_lt23(vyw86, vyw89, ty_Char) → new_lt11(vyw86, vyw89)
new_esEs4(vyw41, vyw301, ty_Float) → new_esEs25(vyw41, vyw301)
new_lt12(vyw4, vyw30, df) → new_esEs30(new_compare0(vyw4, vyw30, df))
new_lt23(vyw86, vyw89, app(ty_Ratio, fdc)) → new_lt6(vyw86, vyw89, fdc)
new_ltEs21(vyw99, vyw101, app(app(ty_@2, fc), fd)) → new_ltEs7(vyw99, vyw101, fc, fd)
new_ltEs5(vyw74, vyw75, ty_Int) → new_ltEs9(vyw74, vyw75)
new_esEs8(vyw40, vyw300, ty_Char) → new_esEs21(vyw40, vyw300)
new_ltEs15(Just(vyw600), Nothing, edd) → False
new_lt6(vyw4, vyw30, egf) → new_esEs30(new_compare9(vyw4, vyw30, egf))
new_esEs27(vyw400, vyw3000, ty_Integer) → new_esEs16(vyw400, vyw3000)
new_esEs9(vyw42, vyw302, ty_Ordering) → new_esEs19(vyw42, vyw302)
new_ltEs24(vyw60, vyw61, ty_Ordering) → new_ltEs16(vyw60, vyw61)
new_lt20(vyw98, vyw100, ty_Bool) → new_lt18(vyw98, vyw100)
new_esEs40(vyw400, vyw3000, ty_Integer) → new_esEs16(vyw400, vyw3000)
new_ltEs20(vyw602, vyw612, ty_Ordering) → new_ltEs16(vyw602, vyw612)
new_esEs14(Just(vyw400), Just(vyw3000), ty_Ordering) → new_esEs19(vyw400, vyw3000)
new_esEs40(vyw400, vyw3000, ty_Bool) → new_esEs23(vyw400, vyw3000)
new_ltEs14(Left(vyw600), Left(vyw610), ty_@0, baa) → new_ltEs13(vyw600, vyw610)
new_compare18(Nothing, Nothing, cag) → EQ
new_ltEs22(vyw601, vyw611, ty_Float) → new_ltEs12(vyw601, vyw611)
new_lt23(vyw86, vyw89, ty_Ordering) → new_lt17(vyw86, vyw89)
new_compare5(LT, GT) → LT
new_lt22(vyw85, vyw88, app(app(app(ty_@3, cdd), cde), cdf)) → new_lt19(vyw85, vyw88, cdd, cde, cdf)
new_ltEs7(@2(vyw600, vyw601), @2(vyw610, vyw611), h, cd) → new_pePe(new_lt21(vyw600, vyw610, h), new_asAs(new_esEs33(vyw600, vyw610, h), new_ltEs22(vyw601, vyw611, cd)))
new_esEs22(Right(vyw400), Right(vyw3000), egb, app(ty_Maybe, fcb)) → new_esEs14(vyw400, vyw3000, fcb)
new_primCmpInt(Neg(Zero), Neg(Succ(vyw3000))) → new_primCmpNat0(Succ(vyw3000), Zero)
new_primCmpInt(Pos(Zero), Neg(Succ(vyw3000))) → GT
new_esEs4(vyw41, vyw301, app(app(ty_Either, efc), efd)) → new_esEs22(vyw41, vyw301, efc, efd)
new_ltEs19(vyw67, vyw68, ty_Bool) → new_ltEs17(vyw67, vyw68)
new_esEs29(vyw600, vyw610, ty_@0) → new_esEs15(vyw600, vyw610)
new_sr0(vyw40, vyw301) → new_primMulInt(vyw40, vyw301)
new_esEs37(vyw85, vyw88, ty_Bool) → new_esEs23(vyw85, vyw88)
new_compare5(LT, LT) → EQ
new_compare8(vyw40, vyw300, ty_Char) → new_compare6(vyw40, vyw300)
new_esEs19(LT, LT) → True
new_esEs14(Just(vyw400), Just(vyw3000), ty_Double) → new_esEs24(vyw400, vyw3000)
new_esEs22(Right(vyw400), Right(vyw3000), egb, ty_Double) → new_esEs24(vyw400, vyw3000)
new_ltEs23(vyw87, vyw90, ty_Ordering) → new_ltEs16(vyw87, vyw90)
new_esEs16(Integer(vyw400), Integer(vyw3000)) → new_primEqInt(vyw400, vyw3000)
new_compare12(@2(vyw40, vyw41), @2(vyw300, vyw301), eh, fa) → new_compare29(vyw40, vyw41, vyw300, vyw301, new_asAs(new_esEs5(vyw40, vyw300, eh), new_esEs4(vyw41, vyw301, fa)), eh, fa)
new_compare112(vyw163, vyw164, vyw165, vyw166, vyw167, vyw168, False, vyw170, edh, eea, eeb) → new_compare113(vyw163, vyw164, vyw165, vyw166, vyw167, vyw168, vyw170, edh, eea, eeb)
new_lt4(vyw601, vyw611, ty_Ordering) → new_lt17(vyw601, vyw611)
new_esEs31(vyw98, vyw100, ty_Double) → new_esEs24(vyw98, vyw100)
new_esEs19(EQ, GT) → False
new_esEs19(GT, EQ) → False
new_ltEs21(vyw99, vyw101, ty_Integer) → new_ltEs8(vyw99, vyw101)
new_ltEs23(vyw87, vyw90, ty_Double) → new_ltEs4(vyw87, vyw90)
new_esEs28(vyw601, vyw611, app(ty_[], bfb)) → new_esEs18(vyw601, vyw611, bfb)
new_esEs27(vyw400, vyw3000, app(ty_Maybe, dcf)) → new_esEs14(vyw400, vyw3000, dcf)
new_ltEs24(vyw60, vyw61, ty_Bool) → new_ltEs17(vyw60, vyw61)
new_esEs33(vyw600, vyw610, ty_Double) → new_esEs24(vyw600, vyw610)
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs36(vyw86, vyw89, app(app(ty_@2, cfa), cfb)) → new_esEs12(vyw86, vyw89, cfa, cfb)
new_esEs9(vyw42, vyw302, ty_Float) → new_esEs25(vyw42, vyw302)
new_ltEs14(Left(vyw600), Right(vyw610), bba, baa) → True
new_lt23(vyw86, vyw89, ty_Integer) → new_lt8(vyw86, vyw89)
new_ltEs6(vyw60, vyw61, fhc) → new_fsEs(new_compare9(vyw60, vyw61, fhc))
new_compare5(GT, LT) → GT
new_esEs8(vyw40, vyw300, ty_Bool) → new_esEs23(vyw40, vyw300)
new_lt21(vyw600, vyw610, ty_Char) → new_lt11(vyw600, vyw610)
new_lt16(vyw4, vyw30, cag) → new_esEs30(new_compare18(vyw4, vyw30, cag))
new_ltEs15(Just(vyw600), Just(vyw610), app(ty_[], bce)) → new_ltEs11(vyw600, vyw610, bce)
new_esEs15(@0, @0) → True
new_esEs32(vyw400, vyw3000, app(ty_Ratio, eha)) → new_esEs13(vyw400, vyw3000, eha)
new_esEs37(vyw85, vyw88, ty_Char) → new_esEs21(vyw85, vyw88)
new_esEs14(Nothing, Nothing, eae) → True
new_ltEs19(vyw67, vyw68, app(app(ty_@2, bhf), bhg)) → new_ltEs7(vyw67, vyw68, bhf, bhg)
new_ltEs20(vyw602, vyw612, app(app(ty_Either, bea), beb)) → new_ltEs14(vyw602, vyw612, bea, beb)
new_asAs(False, vyw116) → False
new_esEs40(vyw400, vyw3000, ty_Ordering) → new_esEs19(vyw400, vyw3000)
new_esEs6(vyw40, vyw300, app(ty_Ratio, chf)) → new_esEs13(vyw40, vyw300, chf)
new_esEs6(vyw40, vyw300, app(app(ty_Either, dad), dae)) → new_esEs22(vyw40, vyw300, dad, dae)
new_ltEs23(vyw87, vyw90, ty_Int) → new_ltEs9(vyw87, vyw90)
new_esEs38(vyw402, vyw3002, ty_Float) → new_esEs25(vyw402, vyw3002)
new_ltEs19(vyw67, vyw68, app(app(ty_Either, caa), cab)) → new_ltEs14(vyw67, vyw68, caa, cab)
new_esEs33(vyw600, vyw610, ty_@0) → new_esEs15(vyw600, vyw610)
new_primMulInt(Pos(vyw400), Neg(vyw3010)) → Neg(new_primMulNat0(vyw400, vyw3010))
new_primMulInt(Neg(vyw400), Pos(vyw3010)) → Neg(new_primMulNat0(vyw400, vyw3010))
new_esEs4(vyw41, vyw301, ty_Int) → new_esEs20(vyw41, vyw301)
new_ltEs20(vyw602, vyw612, app(ty_[], bdh)) → new_ltEs11(vyw602, vyw612, bdh)
new_primMulNat0(Succ(vyw4000), Zero) → Zero
new_primMulNat0(Zero, Succ(vyw30100)) → Zero
new_ltEs14(Left(vyw600), Left(vyw610), app(ty_Ratio, eac), baa) → new_ltEs6(vyw600, vyw610, eac)
new_esEs18([], [], ega) → True
new_compare8(vyw40, vyw300, ty_Bool) → new_compare19(vyw40, vyw300)
new_esEs31(vyw98, vyw100, ty_Ordering) → new_esEs19(vyw98, vyw100)
new_esEs33(vyw600, vyw610, ty_Ordering) → new_esEs19(vyw600, vyw610)
new_ltEs14(Left(vyw600), Left(vyw610), app(ty_[], bab), baa) → new_ltEs11(vyw600, vyw610, bab)
new_esEs32(vyw400, vyw3000, ty_Bool) → new_esEs23(vyw400, vyw3000)
new_esEs28(vyw601, vyw611, ty_Int) → new_esEs20(vyw601, vyw611)
new_ltEs14(Right(vyw600), Right(vyw610), bba, ty_Float) → new_ltEs12(vyw600, vyw610)
new_ltEs14(Left(vyw600), Left(vyw610), app(ty_Maybe, bae), baa) → new_ltEs15(vyw600, vyw610, bae)
new_esEs10(vyw41, vyw301, app(ty_Ratio, cgd)) → new_esEs13(vyw41, vyw301, cgd)
new_lt5(vyw600, vyw610, ty_Float) → new_lt13(vyw600, vyw610)
new_esEs33(vyw600, vyw610, app(ty_Maybe, da)) → new_esEs14(vyw600, vyw610, da)
new_ltEs14(Left(vyw600), Left(vyw610), ty_Double, baa) → new_ltEs4(vyw600, vyw610)
new_esEs4(vyw41, vyw301, app(ty_[], efb)) → new_esEs18(vyw41, vyw301, efb)
new_compare5(LT, EQ) → LT
new_esEs5(vyw40, vyw300, app(app(ty_@2, dag), dah)) → new_esEs12(vyw40, vyw300, dag, dah)
new_lt21(vyw600, vyw610, ty_Int) → new_lt9(vyw600, vyw610)
new_esEs38(vyw402, vyw3002, ty_Integer) → new_esEs16(vyw402, vyw3002)
new_ltEs22(vyw601, vyw611, ty_Integer) → new_ltEs8(vyw601, vyw611)
new_ltEs14(Right(vyw600), Right(vyw610), bba, app(app(ty_Either, bbe), bbf)) → new_ltEs14(vyw600, vyw610, bbe, bbf)
new_compare5(GT, GT) → EQ
new_esEs38(vyw402, vyw3002, ty_Double) → new_esEs24(vyw402, vyw3002)
new_esEs5(vyw40, vyw300, app(ty_Maybe, eae)) → new_esEs14(vyw40, vyw300, eae)
new_compare8(vyw40, vyw300, ty_Int) → new_compare14(vyw40, vyw300)
new_compare8(vyw40, vyw300, ty_Float) → new_compare15(vyw40, vyw300)
new_esEs40(vyw400, vyw3000, app(ty_Ratio, fgb)) → new_esEs13(vyw400, vyw3000, fgb)
new_ltEs15(Just(vyw600), Just(vyw610), ty_@0) → new_ltEs13(vyw600, vyw610)
new_ltEs20(vyw602, vyw612, app(app(app(ty_@3, bed), bee), bef)) → new_ltEs18(vyw602, vyw612, bed, bee, bef)
new_esEs36(vyw86, vyw89, ty_Integer) → new_esEs16(vyw86, vyw89)
new_ltEs17(True, True) → True
new_esEs29(vyw600, vyw610, ty_Char) → new_esEs21(vyw600, vyw610)
new_ltEs5(vyw74, vyw75, app(ty_Maybe, cbe)) → new_ltEs15(vyw74, vyw75, cbe)
new_esEs10(vyw41, vyw301, app(ty_Maybe, cge)) → new_esEs14(vyw41, vyw301, cge)
new_esEs35(vyw400, vyw3000, ty_Int) → new_esEs20(vyw400, vyw3000)
new_lt20(vyw98, vyw100, ty_Float) → new_lt13(vyw98, vyw100)
new_esEs32(vyw400, vyw3000, app(app(ty_@2, egg), egh)) → new_esEs12(vyw400, vyw3000, egg, egh)
new_esEs36(vyw86, vyw89, ty_@0) → new_esEs15(vyw86, vyw89)
new_compare111(vyw148, vyw149, vyw150, vyw151, False, edf, edg) → GT
new_lt4(vyw601, vyw611, ty_Bool) → new_lt18(vyw601, vyw611)
new_lt21(vyw600, vyw610, ty_Bool) → new_lt18(vyw600, vyw610)
new_esEs22(Left(vyw400), Left(vyw3000), ty_Double, egc) → new_esEs24(vyw400, vyw3000)
new_esEs33(vyw600, vyw610, app(app(ty_@2, cb), cc)) → new_esEs12(vyw600, vyw610, cb, cc)
new_esEs40(vyw400, vyw3000, ty_Float) → new_esEs25(vyw400, vyw3000)
new_esEs9(vyw42, vyw302, app(app(ty_@2, dfg), dfh)) → new_esEs12(vyw42, vyw302, dfg, dfh)
new_esEs26(vyw401, vyw3001, ty_Bool) → new_esEs23(vyw401, vyw3001)
new_lt5(vyw600, vyw610, ty_Char) → new_lt11(vyw600, vyw610)
new_ltEs15(Nothing, Nothing, edd) → True
new_ltEs24(vyw60, vyw61, app(ty_Ratio, fhc)) → new_ltEs6(vyw60, vyw61, fhc)
new_ltEs15(Just(vyw600), Just(vyw610), ty_Integer) → new_ltEs8(vyw600, vyw610)
new_esEs11(vyw40, vyw300, app(ty_Ratio, dhc)) → new_esEs13(vyw40, vyw300, dhc)
new_ltEs14(Right(vyw600), Right(vyw610), bba, ty_Int) → new_ltEs9(vyw600, vyw610)
new_ltEs14(Left(vyw600), Left(vyw610), app(app(ty_Either, bac), bad), baa) → new_ltEs14(vyw600, vyw610, bac, bad)
new_esEs4(vyw41, vyw301, ty_@0) → new_esEs15(vyw41, vyw301)
new_lt23(vyw86, vyw89, app(ty_Maybe, cff)) → new_lt16(vyw86, vyw89, cff)
new_esEs10(vyw41, vyw301, ty_Char) → new_esEs21(vyw41, vyw301)
new_esEs6(vyw40, vyw300, ty_Float) → new_esEs25(vyw40, vyw300)
new_compare28(vyw85, vyw86, vyw87, vyw88, vyw89, vyw90, True, cdg, ccf, ccg) → EQ
new_esEs22(Right(vyw400), Right(vyw3000), egb, ty_Float) → new_esEs25(vyw400, vyw3000)
new_lt15(vyw4, vyw30, bhb, bhc) → new_esEs30(new_compare17(vyw4, vyw30, bhb, bhc))
new_ltEs21(vyw99, vyw101, ty_@0) → new_ltEs13(vyw99, vyw101)
new_compare15(Float(vyw40, vyw41), Float(vyw300, vyw301)) → new_compare14(new_sr0(vyw40, vyw300), new_sr0(vyw41, vyw301))
new_esEs11(vyw40, vyw300, ty_Bool) → new_esEs23(vyw40, vyw300)
new_esEs27(vyw400, vyw3000, ty_Char) → new_esEs21(vyw400, vyw3000)
new_esEs28(vyw601, vyw611, app(ty_Ratio, dfe)) → new_esEs13(vyw601, vyw611, dfe)
new_esEs29(vyw600, vyw610, ty_Int) → new_esEs20(vyw600, vyw610)
new_lt7(vyw4, vyw30, eh, fa) → new_esEs30(new_compare12(vyw4, vyw30, eh, fa))
new_esEs6(vyw40, vyw300, app(ty_Maybe, chg)) → new_esEs14(vyw40, vyw300, chg)
new_esEs8(vyw40, vyw300, app(app(app(ty_@3, dee), def), deg)) → new_esEs17(vyw40, vyw300, dee, def, deg)
new_esEs28(vyw601, vyw611, app(app(app(ty_@3, bff), bfg), bfh)) → new_esEs17(vyw601, vyw611, bff, bfg, bfh)
new_lt5(vyw600, vyw610, app(ty_Maybe, bgf)) → new_lt16(vyw600, vyw610, bgf)
new_esEs27(vyw400, vyw3000, ty_Int) → new_esEs20(vyw400, vyw3000)
new_esEs4(vyw41, vyw301, app(app(ty_@2, eec), eed)) → new_esEs12(vyw41, vyw301, eec, eed)
new_compare13(Integer(vyw40), Integer(vyw300)) → new_primCmpInt(vyw40, vyw300)
new_esEs10(vyw41, vyw301, ty_Integer) → new_esEs16(vyw41, vyw301)
new_lt20(vyw98, vyw100, app(app(ty_Either, ha), hb)) → new_lt15(vyw98, vyw100, ha, hb)
new_ltEs17(False, True) → True
new_esEs36(vyw86, vyw89, ty_Ordering) → new_esEs19(vyw86, vyw89)
new_esEs26(vyw401, vyw3001, app(app(ty_Either, dca), dcb)) → new_esEs22(vyw401, vyw3001, dca, dcb)
new_esEs32(vyw400, vyw3000, ty_Float) → new_esEs25(vyw400, vyw3000)
new_ltEs20(vyw602, vyw612, app(ty_Ratio, dfd)) → new_ltEs6(vyw602, vyw612, dfd)
new_esEs28(vyw601, vyw611, ty_Bool) → new_esEs23(vyw601, vyw611)
new_ltEs21(vyw99, vyw101, ty_Bool) → new_ltEs17(vyw99, vyw101)
new_esEs11(vyw40, vyw300, ty_Int) → new_esEs20(vyw40, vyw300)
new_esEs26(vyw401, vyw3001, app(ty_Maybe, dbd)) → new_esEs14(vyw401, vyw3001, dbd)
new_ltEs23(vyw87, vyw90, app(app(app(ty_@3, cef), ceg), ceh)) → new_ltEs18(vyw87, vyw90, cef, ceg, ceh)
new_esEs8(vyw40, vyw300, app(app(ty_@2, dea), deb)) → new_esEs12(vyw40, vyw300, dea, deb)
new_esEs31(vyw98, vyw100, app(app(ty_@2, ge), gf)) → new_esEs12(vyw98, vyw100, ge, gf)
new_ltEs20(vyw602, vyw612, ty_Integer) → new_ltEs8(vyw602, vyw612)
new_ltEs22(vyw601, vyw611, app(app(ty_@2, ba), bb)) → new_ltEs7(vyw601, vyw611, ba, bb)
new_ltEs23(vyw87, vyw90, app(ty_[], ceb)) → new_ltEs11(vyw87, vyw90, ceb)
new_esEs29(vyw600, vyw610, app(app(ty_Either, bgd), bge)) → new_esEs22(vyw600, vyw610, bgd, bge)
new_esEs29(vyw600, vyw610, ty_Integer) → new_esEs16(vyw600, vyw610)
new_ltEs21(vyw99, vyw101, ty_Float) → new_ltEs12(vyw99, vyw101)
new_esEs36(vyw86, vyw89, ty_Int) → new_esEs20(vyw86, vyw89)
new_esEs39(vyw401, vyw3001, ty_Integer) → new_esEs16(vyw401, vyw3001)
new_esEs14(Just(vyw400), Just(vyw3000), ty_@0) → new_esEs15(vyw400, vyw3000)
new_esEs11(vyw40, vyw300, app(app(ty_@2, dha), dhb)) → new_esEs12(vyw40, vyw300, dha, dhb)
new_esEs29(vyw600, vyw610, app(app(app(ty_@3, bgg), bgh), bha)) → new_esEs17(vyw600, vyw610, bgg, bgh, bha)
new_esEs29(vyw600, vyw610, ty_Float) → new_esEs25(vyw600, vyw610)
new_esEs7(vyw40, vyw300, ty_Char) → new_esEs21(vyw40, vyw300)
new_esEs33(vyw600, vyw610, app(ty_[], ce)) → new_esEs18(vyw600, vyw610, ce)
new_esEs29(vyw600, vyw610, app(ty_[], bgc)) → new_esEs18(vyw600, vyw610, bgc)
new_compare0([], :(vyw300, vyw301), df) → LT
new_primPlusNat1(Zero, Zero) → Zero
new_esEs39(vyw401, vyw3001, app(ty_Maybe, ffa)) → new_esEs14(vyw401, vyw3001, ffa)
new_lt21(vyw600, vyw610, app(ty_Ratio, fab)) → new_lt6(vyw600, vyw610, fab)
new_lt20(vyw98, vyw100, app(app(app(ty_@3, hd), he), hf)) → new_lt19(vyw98, vyw100, hd, he, hf)
new_ltEs14(Left(vyw600), Left(vyw610), ty_Char, baa) → new_ltEs10(vyw600, vyw610)
new_asAs(True, vyw116) → vyw116
new_primMulNat0(Succ(vyw4000), Succ(vyw30100)) → new_primPlusNat0(new_primMulNat0(vyw4000, Succ(vyw30100)), vyw30100)
new_ltEs19(vyw67, vyw68, ty_Float) → new_ltEs12(vyw67, vyw68)
new_esEs14(Just(vyw400), Just(vyw3000), app(ty_Ratio, eah)) → new_esEs13(vyw400, vyw3000, eah)
new_ltEs16(LT, LT) → True
new_esEs9(vyw42, vyw302, ty_Int) → new_esEs20(vyw42, vyw302)
new_compare5(EQ, EQ) → EQ
new_compare17(Left(vyw40), Left(vyw300), bhb, bhc) → new_compare210(vyw40, vyw300, new_esEs6(vyw40, vyw300, bhb), bhb, bhc)
new_esEs8(vyw40, vyw300, ty_Double) → new_esEs24(vyw40, vyw300)
new_esEs38(vyw402, vyw3002, app(app(app(ty_@3, fdh), fea), feb)) → new_esEs17(vyw402, vyw3002, fdh, fea, feb)
new_lt5(vyw600, vyw610, ty_Int) → new_lt9(vyw600, vyw610)
new_esEs5(vyw40, vyw300, app(app(app(ty_@3, eff), efg), efh)) → new_esEs17(vyw40, vyw300, eff, efg, efh)
new_ltEs15(Just(vyw600), Just(vyw610), ty_Ordering) → new_ltEs16(vyw600, vyw610)
new_lt22(vyw85, vyw88, ty_@0) → new_lt14(vyw85, vyw88)
new_esEs10(vyw41, vyw301, app(app(ty_Either, chb), chc)) → new_esEs22(vyw41, vyw301, chb, chc)
new_esEs31(vyw98, vyw100, app(ty_Ratio, ege)) → new_esEs13(vyw98, vyw100, ege)
new_compare5(EQ, GT) → LT
new_ltEs21(vyw99, vyw101, app(app(app(ty_@3, gb), gc), gd)) → new_ltEs18(vyw99, vyw101, gb, gc, gd)
new_compare8(vyw40, vyw300, ty_@0) → new_compare16(vyw40, vyw300)
new_lt20(vyw98, vyw100, ty_Int) → new_lt9(vyw98, vyw100)
new_esEs22(Right(vyw400), Right(vyw3000), egb, app(app(ty_@2, fbg), fbh)) → new_esEs12(vyw400, vyw3000, fbg, fbh)
new_ltEs23(vyw87, vyw90, ty_@0) → new_ltEs13(vyw87, vyw90)
new_esEs22(Left(vyw400), Right(vyw3000), egb, egc) → False
new_esEs22(Right(vyw400), Left(vyw3000), egb, egc) → False
new_esEs29(vyw600, vyw610, app(app(ty_@2, bga), bgb)) → new_esEs12(vyw600, vyw610, bga, bgb)
new_esEs5(vyw40, vyw300, app(app(ty_Either, egb), egc)) → new_esEs22(vyw40, vyw300, egb, egc)
new_esEs37(vyw85, vyw88, ty_Ordering) → new_esEs19(vyw85, vyw88)
new_esEs22(Left(vyw400), Left(vyw3000), ty_Float, egc) → new_esEs25(vyw400, vyw3000)
new_lt18(vyw4, vyw30) → new_esEs30(new_compare19(vyw4, vyw30))
new_ltEs15(Just(vyw600), Just(vyw610), app(app(app(ty_@3, bda), bdb), bdc)) → new_ltEs18(vyw600, vyw610, bda, bdb, bdc)
new_ltEs20(vyw602, vyw612, ty_@0) → new_ltEs13(vyw602, vyw612)
new_esEs32(vyw400, vyw3000, ty_Int) → new_esEs20(vyw400, vyw3000)
new_esEs4(vyw41, vyw301, app(ty_Maybe, eef)) → new_esEs14(vyw41, vyw301, eef)
new_esEs11(vyw40, vyw300, app(app(ty_Either, eaa), eab)) → new_esEs22(vyw40, vyw300, eaa, eab)
new_compare6(Char(vyw40), Char(vyw300)) → new_primCmpNat0(vyw40, vyw300)
new_lt23(vyw86, vyw89, ty_Float) → new_lt13(vyw86, vyw89)
new_ltEs20(vyw602, vyw612, ty_Char) → new_ltEs10(vyw602, vyw612)
new_primCompAux00(vyw54, GT) → GT
new_lt20(vyw98, vyw100, ty_Double) → new_lt10(vyw98, vyw100)
new_esEs7(vyw40, vyw300, app(ty_Maybe, ece)) → new_esEs14(vyw40, vyw300, ece)
new_lt5(vyw600, vyw610, ty_@0) → new_lt14(vyw600, vyw610)
new_esEs10(vyw41, vyw301, ty_@0) → new_esEs15(vyw41, vyw301)
new_esEs33(vyw600, vyw610, ty_Int) → new_esEs20(vyw600, vyw610)
new_lt21(vyw600, vyw610, app(ty_Maybe, da)) → new_lt16(vyw600, vyw610, da)
new_esEs7(vyw40, vyw300, app(ty_[], eda)) → new_esEs18(vyw40, vyw300, eda)
new_compare27(@3(vyw40, vyw41, vyw42), @3(vyw300, vyw301, vyw302), cca, ccb, ccc) → new_compare28(vyw40, vyw41, vyw42, vyw300, vyw301, vyw302, new_asAs(new_esEs11(vyw40, vyw300, cca), new_asAs(new_esEs10(vyw41, vyw301, ccb), new_esEs9(vyw42, vyw302, ccc))), cca, ccb, ccc)
new_esEs33(vyw600, vyw610, ty_Float) → new_esEs25(vyw600, vyw610)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_esEs38(vyw402, vyw3002, ty_Int) → new_esEs20(vyw402, vyw3002)
new_compare112(vyw163, vyw164, vyw165, vyw166, vyw167, vyw168, True, vyw170, edh, eea, eeb) → new_compare113(vyw163, vyw164, vyw165, vyw166, vyw167, vyw168, True, edh, eea, eeb)
new_esEs5(vyw40, vyw300, ty_Char) → new_esEs21(vyw40, vyw300)
new_esEs6(vyw40, vyw300, ty_Int) → new_esEs20(vyw40, vyw300)
new_esEs4(vyw41, vyw301, app(ty_Ratio, eee)) → new_esEs13(vyw41, vyw301, eee)
new_ltEs15(Just(vyw600), Just(vyw610), app(app(ty_Either, bcf), bcg)) → new_ltEs14(vyw600, vyw610, bcf, bcg)
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_compare25(vyw74, vyw75, False, dde) → new_compare10(vyw74, vyw75, new_ltEs5(vyw74, vyw75, dde), dde)
new_esEs22(Right(vyw400), Right(vyw3000), egb, app(app(ty_Either, fcg), fch)) → new_esEs22(vyw400, vyw3000, fcg, fch)
new_primCmpInt(Neg(Succ(vyw400)), Pos(vyw300)) → LT
new_esEs5(vyw40, vyw300, ty_@0) → new_esEs15(vyw40, vyw300)
new_not(True) → False
new_ltEs23(vyw87, vyw90, ty_Float) → new_ltEs12(vyw87, vyw90)

The set Q consists of the following terms:

new_esEs35(x0, x1, ty_Integer)
new_esEs38(x0, x1, app(app(ty_@2, x2), x3))
new_lt4(x0, x1, ty_@0)
new_lt23(x0, x1, app(ty_Maybe, x2))
new_ltEs15(Just(x0), Just(x1), app(ty_[], x2))
new_esEs6(x0, x1, ty_Double)
new_ltEs24(x0, x1, app(ty_Ratio, x2))
new_compare5(EQ, EQ)
new_esEs10(x0, x1, app(app(ty_Either, x2), x3))
new_compare28(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs26(x0, x1, ty_Double)
new_ltEs23(x0, x1, app(ty_[], x2))
new_esEs5(x0, x1, ty_Integer)
new_lt16(x0, x1, x2)
new_esEs38(x0, x1, ty_Char)
new_ltEs10(x0, x1)
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_esEs5(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs14(Right(x0), Right(x1), x2, ty_Bool)
new_ltEs9(x0, x1)
new_esEs37(x0, x1, app(ty_Maybe, x2))
new_esEs37(x0, x1, ty_Integer)
new_ltEs14(Left(x0), Left(x1), ty_Ordering, x2)
new_ltEs15(Just(x0), Just(x1), ty_Int)
new_lt23(x0, x1, ty_Int)
new_esEs7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt5(x0, x1, ty_Integer)
new_esEs18([], :(x0, x1), x2)
new_ltEs5(x0, x1, app(ty_[], x2))
new_esEs32(x0, x1, app(ty_[], x2))
new_ltEs19(x0, x1, ty_Int)
new_esEs36(x0, x1, ty_Float)
new_primCmpNat0(Succ(x0), Succ(x1))
new_ltEs21(x0, x1, app(ty_[], x2))
new_lt21(x0, x1, ty_Char)
new_esEs37(x0, x1, ty_Float)
new_esEs40(x0, x1, ty_Char)
new_ltEs23(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_@0)
new_lt5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt5(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_@0)
new_esEs5(x0, x1, app(ty_[], x2))
new_primPlusNat0(Succ(x0), x1)
new_esEs6(x0, x1, ty_Bool)
new_esEs18([], [], x0)
new_ltEs24(x0, x1, app(app(ty_Either, x2), x3))
new_compare8(x0, x1, ty_Int)
new_lt20(x0, x1, ty_@0)
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs19(x0, x1, ty_Ordering)
new_esEs9(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare110(x0, x1, True, x2, x3)
new_ltEs24(x0, x1, app(ty_Maybe, x2))
new_lt20(x0, x1, ty_Float)
new_compare0([], [], x0)
new_ltEs14(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_lt23(x0, x1, ty_Ordering)
new_esEs40(x0, x1, app(ty_[], x2))
new_esEs16(Integer(x0), Integer(x1))
new_esEs29(x0, x1, ty_Ordering)
new_compare8(x0, x1, app(ty_Ratio, x2))
new_ltEs15(Just(x0), Just(x1), ty_Float)
new_esEs39(x0, x1, ty_Integer)
new_esEs9(x0, x1, app(app(ty_@2, x2), x3))
new_lt20(x0, x1, ty_Int)
new_esEs39(x0, x1, app(app(ty_@2, x2), x3))
new_esEs33(x0, x1, ty_Integer)
new_lt4(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt4(x0, x1, ty_Bool)
new_compare5(GT, GT)
new_esEs26(x0, x1, ty_Ordering)
new_esEs22(Left(x0), Left(x1), ty_Bool, x2)
new_esEs38(x0, x1, ty_@0)
new_esEs27(x0, x1, ty_Char)
new_compare17(Right(x0), Left(x1), x2, x3)
new_compare17(Left(x0), Right(x1), x2, x3)
new_ltEs14(Left(x0), Right(x1), x2, x3)
new_esEs11(x0, x1, ty_Float)
new_lt21(x0, x1, ty_Double)
new_ltEs14(Right(x0), Left(x1), x2, x3)
new_esEs7(x0, x1, app(ty_Ratio, x2))
new_asAs(False, x0)
new_esEs38(x0, x1, app(ty_Maybe, x2))
new_compare7(Double(x0, x1), Double(x2, x3))
new_esEs36(x0, x1, ty_Double)
new_esEs33(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, ty_Bool)
new_esEs10(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs23(x0, x1, ty_Char)
new_lt23(x0, x1, app(app(ty_Either, x2), x3))
new_esEs32(x0, x1, ty_Float)
new_ltEs14(Left(x0), Left(x1), ty_@0, x2)
new_esEs6(x0, x1, ty_Ordering)
new_lt22(x0, x1, ty_Ordering)
new_lt12(x0, x1, x2)
new_compare114(x0, x1, x2, x3, True, x4, x5, x6)
new_lt21(x0, x1, ty_@0)
new_esEs30(GT)
new_ltEs14(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs14(Left(x0), Left(x1), app(ty_[], x2), x3)
new_lt5(x0, x1, ty_Char)
new_ltEs24(x0, x1, app(app(ty_@2, x2), x3))
new_esEs33(x0, x1, app(ty_Maybe, x2))
new_ltEs15(Just(x0), Just(x1), ty_Double)
new_esEs22(Right(x0), Right(x1), x2, app(ty_[], x3))
new_esEs22(Right(x0), Right(x1), x2, ty_Bool)
new_esEs27(x0, x1, ty_Float)
new_esEs13(:%(x0, x1), :%(x2, x3), x4)
new_esEs5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs38(x0, x1, ty_Bool)
new_esEs36(x0, x1, ty_Int)
new_esEs8(x0, x1, ty_@0)
new_esEs7(x0, x1, ty_Double)
new_compare8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs39(x0, x1, ty_Char)
new_esEs36(x0, x1, app(app(ty_@2, x2), x3))
new_lt14(x0, x1)
new_esEs4(x0, x1, ty_Char)
new_esEs37(x0, x1, ty_Double)
new_esEs9(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs7(@2(x0, x1), @2(x2, x3), x4, x5)
new_ltEs24(x0, x1, ty_Char)
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_esEs10(x0, x1, ty_Ordering)
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs8(x0, x1)
new_lt22(x0, x1, app(ty_Ratio, x2))
new_esEs23(False, False)
new_esEs4(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs24(x0, x1, ty_Float)
new_primCompAux00(x0, GT)
new_lt23(x0, x1, app(ty_[], x2))
new_esEs28(x0, x1, app(ty_Ratio, x2))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_ltEs5(x0, x1, ty_Bool)
new_lt4(x0, x1, ty_Integer)
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_ltEs14(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs11(x0, x1, ty_Double)
new_esEs9(x0, x1, ty_Integer)
new_ltEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare29(x0, x1, x2, x3, True, x4, x5)
new_ltEs21(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs19(x0, x1, ty_Integer)
new_ltEs20(x0, x1, ty_Ordering)
new_lt20(x0, x1, ty_Ordering)
new_esEs4(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(x0, x1, ty_Ordering)
new_ltEs17(False, False)
new_esEs29(x0, x1, ty_Integer)
new_ltEs5(x0, x1, ty_Integer)
new_esEs5(x0, x1, ty_Float)
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs21(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Bool)
new_esEs8(x0, x1, ty_Bool)
new_compare19(False, False)
new_esEs38(x0, x1, ty_Ordering)
new_lt22(x0, x1, ty_Bool)
new_ltEs14(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs22(Right(x0), Right(x1), x2, ty_Double)
new_ltEs20(x0, x1, ty_Int)
new_esEs22(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs29(x0, x1, ty_Float)
new_esEs9(x0, x1, app(ty_Ratio, x2))
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_primEqNat0(Zero, Zero)
new_lt5(x0, x1, app(ty_Maybe, x2))
new_compare18(Nothing, Nothing, x0)
new_lt7(x0, x1, x2, x3)
new_ltEs14(Right(x0), Right(x1), x2, ty_Float)
new_esEs14(Just(x0), Just(x1), ty_Ordering)
new_ltEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs22(x0, x1, ty_Char)
new_ltEs5(x0, x1, ty_Ordering)
new_lt4(x0, x1, ty_Float)
new_esEs11(x0, x1, app(ty_[], x2))
new_esEs27(x0, x1, app(ty_Ratio, x2))
new_compare210(x0, x1, True, x2, x3)
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(ty_[], x2))
new_ltEs23(x0, x1, ty_Float)
new_ltEs15(Just(x0), Just(x1), ty_Integer)
new_ltEs19(x0, x1, app(ty_[], x2))
new_lt11(x0, x1)
new_esEs22(Left(x0), Left(x1), ty_Int, x2)
new_esEs31(x0, x1, app(app(ty_Either, x2), x3))
new_lt22(x0, x1, app(app(ty_Either, x2), x3))
new_primMulNat0(Zero, Zero)
new_ltEs4(x0, x1)
new_esEs11(x0, x1, ty_Integer)
new_esEs9(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, ty_Integer)
new_compare8(x0, x1, ty_Char)
new_esEs4(x0, x1, ty_Ordering)
new_lt5(x0, x1, ty_Double)
new_esEs27(x0, x1, ty_Ordering)
new_primEqNat0(Succ(x0), Succ(x1))
new_ltEs5(x0, x1, ty_Char)
new_esEs4(x0, x1, ty_Float)
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs9(x0, x1, ty_Float)
new_esEs31(x0, x1, app(ty_[], x2))
new_lt23(x0, x1, ty_Bool)
new_lt23(x0, x1, app(app(ty_@2, x2), x3))
new_lt4(x0, x1, app(ty_[], x2))
new_esEs26(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs20(x0, x1, app(ty_[], x2))
new_compare5(LT, LT)
new_esEs27(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Double)
new_esEs40(x0, x1, app(app(ty_Either, x2), x3))
new_compare8(x0, x1, ty_@0)
new_compare13(Integer(x0), Integer(x1))
new_esEs7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs8(x0, x1, ty_Char)
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_ltEs17(True, True)
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs14(Just(x0), Just(x1), ty_Integer)
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs36(x0, x1, app(ty_[], x2))
new_esEs22(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs22(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_ltEs14(Left(x0), Left(x1), ty_Bool, x2)
new_compare111(x0, x1, x2, x3, False, x4, x5)
new_ltEs23(x0, x1, app(ty_Ratio, x2))
new_ltEs22(x0, x1, app(ty_Maybe, x2))
new_esEs7(x0, x1, ty_Integer)
new_esEs19(LT, LT)
new_pePe(True, x0)
new_primCompAux00(x0, LT)
new_esEs19(EQ, GT)
new_esEs19(GT, EQ)
new_esEs28(x0, x1, app(app(ty_@2, x2), x3))
new_esEs26(x0, x1, ty_Int)
new_esEs37(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Char)
new_ltEs24(x0, x1, app(ty_[], x2))
new_ltEs14(Right(x0), Right(x1), x2, app(ty_[], x3))
new_esEs11(x0, x1, ty_@0)
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, ty_Char)
new_esEs26(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, ty_Int)
new_esEs4(x0, x1, ty_@0)
new_esEs37(x0, x1, app(app(ty_Either, x2), x3))
new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs22(x0, x1, app(app(ty_@2, x2), x3))
new_esEs22(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs38(x0, x1, app(ty_Ratio, x2))
new_esEs36(x0, x1, app(ty_Ratio, x2))
new_lt23(x0, x1, ty_Double)
new_primPlusNat1(Zero, Succ(x0))
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs4(x0, x1, app(ty_[], x2))
new_esEs38(x0, x1, app(app(ty_Either, x2), x3))
new_esEs24(Double(x0, x1), Double(x2, x3))
new_ltEs20(x0, x1, ty_Float)
new_esEs14(Just(x0), Just(x1), app(ty_Maybe, x2))
new_ltEs21(x0, x1, ty_Ordering)
new_esEs33(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs19(x0, x1, ty_Float)
new_esEs14(Just(x0), Just(x1), app(ty_[], x2))
new_lt22(x0, x1, ty_Int)
new_ltEs14(Right(x0), Right(x1), x2, ty_Int)
new_esEs31(x0, x1, ty_@0)
new_lt23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare8(x0, x1, ty_Ordering)
new_compare16(@0, @0)
new_lt20(x0, x1, app(ty_[], x2))
new_esEs38(x0, x1, app(ty_[], x2))
new_esEs27(x0, x1, app(app(ty_Either, x2), x3))
new_esEs32(x0, x1, ty_Bool)
new_compare113(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_sr0(x0, x1)
new_ltEs20(x0, x1, ty_Double)
new_esEs4(x0, x1, ty_Integer)
new_lt4(x0, x1, ty_Double)
new_esEs39(x0, x1, ty_Ordering)
new_esEs10(x0, x1, app(ty_[], x2))
new_lt21(x0, x1, ty_Ordering)
new_esEs14(Nothing, Nothing, x0)
new_ltEs24(x0, x1, ty_Integer)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_esEs36(x0, x1, ty_Char)
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs22(Left(x0), Left(x1), ty_@0, x2)
new_esEs14(Just(x0), Just(x1), ty_Bool)
new_ltEs15(Just(x0), Just(x1), ty_Ordering)
new_ltEs15(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs10(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt22(x0, x1, ty_Double)
new_ltEs20(x0, x1, ty_Integer)
new_compare8(x0, x1, ty_Double)
new_esEs36(x0, x1, app(ty_Maybe, x2))
new_ltEs14(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs26(x0, x1, app(ty_Ratio, x2))
new_compare8(x0, x1, ty_Integer)
new_esEs34(x0, x1, ty_Int)
new_esEs31(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs14(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs20(x0, x1, ty_@0)
new_esEs26(x0, x1, app(ty_Maybe, x2))
new_lt22(x0, x1, ty_Integer)
new_compare10(x0, x1, False, x2)
new_lt22(x0, x1, ty_Char)
new_primPlusNat1(Zero, Zero)
new_esEs28(x0, x1, ty_Bool)
new_esEs39(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, ty_Integer)
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_esEs40(x0, x1, ty_Integer)
new_ltEs16(EQ, EQ)
new_ltEs14(Right(x0), Right(x1), x2, ty_@0)
new_compare113(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_esEs36(x0, x1, ty_Integer)
new_lt20(x0, x1, ty_Bool)
new_esEs26(x0, x1, app(app(ty_Either, x2), x3))
new_compare0(:(x0, x1), [], x2)
new_lt23(x0, x1, ty_Char)
new_esEs6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_ltEs22(x0, x1, app(ty_[], x2))
new_ltEs16(LT, LT)
new_ltEs14(Left(x0), Left(x1), ty_Double, x2)
new_ltEs18(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs38(x0, x1, ty_Double)
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs35(x0, x1, ty_Int)
new_esEs28(x0, x1, app(ty_Maybe, x2))
new_compare210(x0, x1, False, x2, x3)
new_esEs32(x0, x1, ty_@0)
new_lt17(x0, x1)
new_lt23(x0, x1, ty_Integer)
new_ltEs22(x0, x1, app(ty_Ratio, x2))
new_compare18(Just(x0), Just(x1), x2)
new_esEs8(x0, x1, ty_Integer)
new_esEs36(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_esEs33(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs11(x0, x1, ty_Ordering)
new_lt21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, ty_Int)
new_lt5(x0, x1, ty_Int)
new_esEs27(x0, x1, app(ty_[], x2))
new_lt22(x0, x1, ty_@0)
new_esEs36(x0, x1, ty_Bool)
new_esEs8(x0, x1, ty_Ordering)
new_esEs27(x0, x1, ty_Double)
new_esEs39(x0, x1, app(app(ty_Either, x2), x3))
new_esEs22(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs11(x0, x1, ty_Char)
new_ltEs14(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_esEs26(x0, x1, ty_Integer)
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_esEs40(x0, x1, ty_Bool)
new_esEs22(Left(x0), Left(x1), app(ty_[], x2), x3)
new_esEs11(x0, x1, ty_Bool)
new_esEs29(x0, x1, ty_Bool)
new_ltEs16(LT, GT)
new_ltEs16(GT, LT)
new_esEs28(x0, x1, ty_Int)
new_esEs14(Just(x0), Just(x1), ty_@0)
new_esEs22(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_ltEs24(x0, x1, ty_Int)
new_esEs4(x0, x1, ty_Int)
new_ltEs21(x0, x1, ty_Integer)
new_compare12(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs37(x0, x1, ty_Ordering)
new_ltEs15(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_ltEs22(x0, x1, ty_@0)
new_compare8(x0, x1, app(ty_[], x2))
new_lt21(x0, x1, ty_Integer)
new_compare25(x0, x1, True, x2)
new_esEs28(x0, x1, ty_Char)
new_compare14(x0, x1)
new_esEs23(True, True)
new_ltEs21(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_esEs29(x0, x1, ty_Int)
new_esEs33(x0, x1, ty_Double)
new_esEs37(x0, x1, ty_Char)
new_primMulInt(Pos(x0), Pos(x1))
new_primEqInt(Neg(Zero), Pos(Zero))
new_primEqInt(Pos(Zero), Neg(Zero))
new_ltEs15(Nothing, Nothing, x0)
new_lt5(x0, x1, ty_@0)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_ltEs14(Right(x0), Right(x1), x2, ty_Integer)
new_esEs28(x0, x1, ty_Float)
new_esEs40(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt22(x0, x1, ty_Float)
new_esEs6(x0, x1, ty_Float)
new_esEs40(x0, x1, ty_Float)
new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_lt20(x0, x1, ty_Double)
new_compare26(x0, x1, True, x2, x3)
new_esEs31(x0, x1, ty_Int)
new_esEs40(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs15(Just(x0), Just(x1), ty_@0)
new_compare11(x0, x1, True, x2, x3)
new_lt22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs14(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs5(x0, x1, ty_Ordering)
new_ltEs14(Left(x0), Left(x1), ty_Float, x2)
new_esEs18(:(x0, x1), [], x2)
new_esEs31(x0, x1, app(app(ty_@2, x2), x3))
new_esEs7(x0, x1, ty_Char)
new_esEs12(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs29(x0, x1, ty_@0)
new_esEs32(x0, x1, ty_Integer)
new_esEs31(x0, x1, ty_Bool)
new_ltEs15(Just(x0), Just(x1), ty_Char)
new_primEqNat0(Zero, Succ(x0))
new_esEs37(x0, x1, app(ty_[], x2))
new_esEs28(x0, x1, app(app(ty_Either, x2), x3))
new_primEqInt(Neg(Zero), Neg(Zero))
new_ltEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, ty_Int)
new_asAs(True, x0)
new_lt19(x0, x1, x2, x3, x4)
new_esEs27(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt13(x0, x1)
new_ltEs19(x0, x1, ty_Double)
new_esEs40(x0, x1, ty_@0)
new_esEs33(x0, x1, ty_Float)
new_ltEs14(Left(x0), Left(x1), ty_Char, x2)
new_esEs4(x0, x1, app(ty_Ratio, x2))
new_esEs40(x0, x1, ty_Double)
new_esEs39(x0, x1, ty_Float)
new_esEs22(Left(x0), Left(x1), ty_Char, x2)
new_esEs6(x0, x1, app(ty_Ratio, x2))
new_lt4(x0, x1, app(ty_Ratio, x2))
new_ltEs22(x0, x1, ty_Ordering)
new_lt23(x0, x1, ty_Float)
new_ltEs22(x0, x1, ty_Int)
new_ltEs14(Right(x0), Right(x1), x2, ty_Double)
new_esEs6(x0, x1, app(app(ty_@2, x2), x3))
new_compare112(x0, x1, x2, x3, x4, x5, False, x6, x7, x8, x9)
new_esEs21(Char(x0), Char(x1))
new_lt23(x0, x1, app(ty_Ratio, x2))
new_fsEs(x0)
new_compare19(False, True)
new_compare19(True, False)
new_ltEs5(x0, x1, ty_@0)
new_esEs26(x0, x1, ty_Float)
new_esEs22(Right(x0), Right(x1), x2, ty_Float)
new_esEs22(Left(x0), Left(x1), ty_Double, x2)
new_esEs30(EQ)
new_esEs22(Left(x0), Left(x1), ty_Integer, x2)
new_esEs28(x0, x1, ty_Double)
new_ltEs16(GT, GT)
new_esEs8(x0, x1, app(ty_[], x2))
new_esEs27(x0, x1, app(ty_Maybe, x2))
new_ltEs19(x0, x1, ty_Char)
new_esEs11(x0, x1, ty_Int)
new_compare28(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_ltEs19(x0, x1, ty_Bool)
new_ltEs23(x0, x1, app(app(ty_Either, x2), x3))
new_esEs30(LT)
new_esEs4(x0, x1, ty_Double)
new_lt21(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, app(ty_[], x2))
new_lt21(x0, x1, app(app(ty_Either, x2), x3))
new_esEs33(x0, x1, app(app(ty_@2, x2), x3))
new_esEs38(x0, x1, ty_Integer)
new_esEs40(x0, x1, app(ty_Ratio, x2))
new_esEs36(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt5(x0, x1, ty_Bool)
new_ltEs24(x0, x1, ty_@0)
new_lt4(x0, x1, app(ty_Maybe, x2))
new_esEs22(Left(x0), Right(x1), x2, x3)
new_esEs22(Right(x0), Left(x1), x2, x3)
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_esEs14(Nothing, Just(x0), x1)
new_ltEs20(x0, x1, ty_Bool)
new_lt20(x0, x1, ty_Char)
new_esEs7(x0, x1, ty_Bool)
new_esEs14(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs26(x0, x1, ty_Bool)
new_esEs5(x0, x1, ty_Char)
new_esEs5(x0, x1, app(ty_Maybe, x2))
new_lt22(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, ty_Bool)
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_esEs10(x0, x1, ty_Integer)
new_ltEs15(Just(x0), Just(x1), ty_Bool)
new_esEs22(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_esEs9(x0, x1, app(ty_Maybe, x2))
new_esEs14(Just(x0), Just(x1), app(ty_Ratio, x2))
new_esEs10(x0, x1, ty_Float)
new_lt21(x0, x1, app(ty_Ratio, x2))
new_esEs28(x0, x1, app(ty_[], x2))
new_esEs38(x0, x1, ty_Float)
new_esEs7(x0, x1, ty_@0)
new_lt4(x0, x1, ty_Char)
new_esEs38(x0, x1, ty_Int)
new_ltEs21(x0, x1, ty_Char)
new_ltEs14(Right(x0), Right(x1), x2, ty_Ordering)
new_ltEs14(Right(x0), Right(x1), x2, ty_Char)
new_esEs32(x0, x1, app(ty_Ratio, x2))
new_esEs7(x0, x1, ty_Int)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs5(x0, x1, ty_Int)
new_esEs20(x0, x1)
new_esEs27(x0, x1, ty_Bool)
new_lt21(x0, x1, ty_Int)
new_esEs32(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpNat0(Zero, Zero)
new_lt8(x0, x1)
new_esEs29(x0, x1, ty_Char)
new_compare5(LT, EQ)
new_compare5(EQ, LT)
new_compare29(x0, x1, x2, x3, False, x4, x5)
new_esEs6(x0, x1, app(ty_Maybe, x2))
new_esEs23(True, False)
new_esEs23(False, True)
new_lt5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_esEs39(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt4(x0, x1, ty_Ordering)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs5(x0, x1, ty_Double)
new_esEs37(x0, x1, app(ty_Ratio, x2))
new_esEs8(x0, x1, ty_Int)
new_esEs10(x0, x1, ty_Double)
new_esEs33(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_@0)
new_compare0([], :(x0, x1), x2)
new_ltEs23(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, EQ)
new_ltEs21(x0, x1, app(ty_Ratio, x2))
new_lt21(x0, x1, ty_Bool)
new_esEs15(@0, @0)
new_compare0(:(x0, x1), :(x2, x3), x4)
new_esEs40(x0, x1, app(ty_Maybe, x2))
new_compare6(Char(x0), Char(x1))
new_primPlusNat0(Zero, x0)
new_lt22(x0, x1, app(app(ty_@2, x2), x3))
new_compare11(x0, x1, False, x2, x3)
new_esEs28(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs7(x0, x1, app(ty_Maybe, x2))
new_esEs19(GT, GT)
new_lt5(x0, x1, ty_Float)
new_esEs10(x0, x1, ty_Char)
new_ltEs20(x0, x1, ty_Char)
new_esEs4(x0, x1, ty_Bool)
new_esEs26(x0, x1, ty_@0)
new_compare8(x0, x1, ty_Float)
new_esEs6(x0, x1, app(app(ty_Either, x2), x3))
new_esEs14(Just(x0), Just(x1), ty_Double)
new_compare18(Just(x0), Nothing, x1)
new_esEs39(x0, x1, app(ty_[], x2))
new_esEs18(:(x0, x1), :(x2, x3), x4)
new_esEs39(x0, x1, ty_Int)
new_esEs31(x0, x1, ty_Integer)
new_esEs38(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs5(x0, x1, ty_Float)
new_ltEs14(Left(x0), Left(x1), ty_Int, x2)
new_ltEs21(x0, x1, ty_Double)
new_esEs32(x0, x1, ty_Ordering)
new_esEs5(x0, x1, app(ty_Ratio, x2))
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_lt21(x0, x1, app(app(ty_@2, x2), x3))
new_compare17(Left(x0), Left(x1), x2, x3)
new_ltEs22(x0, x1, ty_Float)
new_esEs19(EQ, EQ)
new_lt9(x0, x1)
new_compare8(x0, x1, app(ty_Maybe, x2))
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_esEs36(x0, x1, ty_Ordering)
new_compare114(x0, x1, x2, x3, False, x4, x5, x6)
new_esEs10(x0, x1, app(ty_Maybe, x2))
new_compare9(:%(x0, x1), :%(x2, x3), ty_Integer)
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_esEs9(x0, x1, ty_@0)
new_esEs22(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_compare25(x0, x1, False, x2)
new_compare10(x0, x1, True, x2)
new_ltEs23(x0, x1, ty_Int)
new_compare111(x0, x1, x2, x3, True, x4, x5)
new_compare19(True, True)
new_lt5(x0, x1, app(ty_Ratio, x2))
new_esEs19(EQ, LT)
new_esEs19(LT, EQ)
new_lt22(x0, x1, app(ty_[], x2))
new_ltEs13(x0, x1)
new_esEs9(x0, x1, ty_Bool)
new_compare17(Right(x0), Right(x1), x2, x3)
new_esEs14(Just(x0), Just(x1), ty_Int)
new_esEs9(x0, x1, ty_Int)
new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs8(x0, x1, ty_Double)
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_lt6(x0, x1, x2)
new_ltEs14(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_esEs10(x0, x1, ty_@0)
new_not(True)
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(LT, GT)
new_esEs19(GT, LT)
new_ltEs19(x0, x1, ty_@0)
new_esEs14(Just(x0), Just(x1), ty_Float)
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs16(EQ, GT)
new_esEs40(x0, x1, ty_Int)
new_ltEs16(GT, EQ)
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_esEs37(x0, x1, ty_@0)
new_lt20(x0, x1, ty_Integer)
new_esEs22(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_esEs22(Right(x0), Right(x1), x2, ty_Ordering)
new_esEs14(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_lt20(x0, x1, app(ty_Ratio, x2))
new_not(False)
new_ltEs15(Just(x0), Just(x1), app(ty_Maybe, x2))
new_primMulNat0(Succ(x0), Succ(x1))
new_ltEs16(EQ, LT)
new_ltEs16(LT, EQ)
new_esEs26(x0, x1, ty_Char)
new_lt5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs27(x0, x1, ty_@0)
new_lt21(x0, x1, ty_Float)
new_esEs8(x0, x1, ty_Float)
new_ltEs17(False, True)
new_ltEs17(True, False)
new_compare15(Float(x0, x1), Float(x2, x3))
new_esEs22(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_esEs39(x0, x1, ty_Double)
new_esEs34(x0, x1, ty_Integer)
new_ltEs5(x0, x1, ty_Double)
new_compare5(EQ, GT)
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_compare5(GT, EQ)
new_compare112(x0, x1, x2, x3, x4, x5, True, x6, x7, x8, x9)
new_esEs33(x0, x1, ty_Ordering)
new_esEs31(x0, x1, ty_Char)
new_ltEs24(x0, x1, ty_Bool)
new_primCmpNat0(Succ(x0), Zero)
new_compare5(GT, LT)
new_compare5(LT, GT)
new_esEs25(Float(x0, x1), Float(x2, x3))
new_ltEs15(Nothing, Just(x0), x1)
new_esEs29(x0, x1, app(ty_[], x2))
new_esEs14(Just(x0), Nothing, x1)
new_compare8(x0, x1, ty_Bool)
new_esEs40(x0, x1, ty_Ordering)
new_esEs32(x0, x1, ty_Int)
new_compare8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt18(x0, x1)
new_esEs5(x0, x1, ty_Bool)
new_esEs7(x0, x1, app(app(ty_Either, x2), x3))
new_esEs31(x0, x1, ty_Double)
new_esEs10(x0, x1, ty_Int)
new_esEs32(x0, x1, app(ty_Maybe, x2))
new_esEs22(Left(x0), Left(x1), ty_Float, x2)
new_ltEs23(x0, x1, app(ty_Maybe, x2))
new_compare9(:%(x0, x1), :%(x2, x3), ty_Int)
new_compare27(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs22(Right(x0), Right(x1), x2, ty_Integer)
new_esEs4(x0, x1, app(ty_Maybe, x2))
new_ltEs6(x0, x1, x2)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_esEs10(x0, x1, app(ty_Ratio, x2))
new_esEs39(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Integer)
new_ltEs5(x0, x1, ty_Int)
new_esEs27(x0, x1, ty_Integer)
new_esEs28(x0, x1, ty_Integer)
new_ltEs24(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, ty_Double)
new_compare18(Nothing, Just(x0), x1)
new_esEs31(x0, x1, app(ty_Maybe, x2))
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_esEs36(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs11(x0, x1, x2)
new_primCompAux0(x0, x1, x2, x3)
new_lt21(x0, x1, app(ty_[], x2))
new_ltEs23(x0, x1, ty_@0)
new_esEs28(x0, x1, ty_Ordering)
new_esEs7(x0, x1, ty_Float)
new_esEs39(x0, x1, ty_@0)
new_esEs22(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs26(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs37(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs22(Right(x0), Right(x1), x2, ty_@0)
new_sr(Integer(x0), Integer(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_ltEs21(x0, x1, ty_Float)
new_esEs37(x0, x1, ty_Int)
new_ltEs21(x0, x1, ty_@0)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primEqInt(Pos(Zero), Pos(Zero))
new_lt4(x0, x1, ty_Int)
new_ltEs22(x0, x1, ty_Bool)
new_esEs31(x0, x1, ty_Ordering)
new_ltEs15(Just(x0), Nothing, x1)
new_primEqNat0(Succ(x0), Zero)
new_lt4(x0, x1, app(app(ty_Either, x2), x3))
new_lt10(x0, x1)
new_lt15(x0, x1, x2, x3)
new_ltEs12(x0, x1)
new_lt5(x0, x1, ty_Ordering)
new_esEs31(x0, x1, ty_Float)
new_primMulInt(Neg(x0), Neg(x1))
new_ltEs23(x0, x1, ty_Ordering)
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_ltEs14(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_ltEs15(Just(x0), Just(x1), app(ty_Ratio, x2))
new_lt23(x0, x1, ty_@0)
new_esEs27(x0, x1, ty_Int)
new_esEs37(x0, x1, ty_Bool)
new_esEs5(x0, x1, ty_@0)
new_primMulNat0(Zero, Succ(x0))
new_ltEs14(Left(x0), Left(x1), ty_Integer, x2)
new_esEs9(x0, x1, ty_Ordering)
new_compare110(x0, x1, False, x2, x3)
new_esEs32(x0, x1, ty_Double)
new_compare26(x0, x1, False, x2, x3)
new_ltEs15(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs9(x0, x1, ty_Double)
new_primMulNat0(Succ(x0), Zero)
new_esEs14(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_esEs22(Right(x0), Right(x1), x2, ty_Char)
new_lt4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_primCmpNat0(Zero, Succ(x0))
new_esEs29(x0, x1, ty_Double)
new_primPlusNat1(Succ(x0), Zero)
new_compare8(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(x0, x1, app(ty_[], x2))
new_pePe(False, x0)
new_esEs14(Just(x0), Just(x1), ty_Char)
new_ltEs22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs22(Right(x0), Right(x1), x2, ty_Int)

We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ QDPSizeChangeProof

Q DP problem:
The TRS P consists of the following rules:

new_lookupFM1(vyw28, vyw29, vyw30, vyw31, vyw32, vyw33, True, bb, bc) → new_lookupFM(vyw32, vyw33, bb, bc)
new_lookupFM(Branch(vyw30, vyw31, vyw32, vyw33, vyw34), vyw4, bd, be) → new_lookupFM2(vyw30, vyw31, vyw32, vyw33, vyw34, vyw4, new_lt24(vyw4, vyw30, be), bd, be)
new_lookupFM2(vyw13, vyw14, vyw15, vyw16, vyw17, vyw18, False, h, ba) → new_lookupFM1(vyw13, vyw14, vyw15, vyw16, vyw17, vyw18, new_gt(vyw18, vyw13, ba), h, ba)
new_lookupFM2(vyw13, vyw14, vyw15, vyw16, vyw17, vyw18, True, h, ba) → new_lookupFM(vyw16, vyw18, h, ba)

The TRS R consists of the following rules:

new_esEs40(vyw400, vyw3000, ty_Int) → new_esEs20(vyw400, vyw3000)
new_esEs6(vyw40, vyw300, ty_@0) → new_esEs15(vyw40, vyw300)
new_esEs32(vyw400, vyw3000, ty_Double) → new_esEs24(vyw400, vyw3000)
new_esEs39(vyw401, vyw3001, ty_Ordering) → new_esEs19(vyw401, vyw3001)
new_ltEs20(vyw602, vyw612, ty_Int) → new_ltEs9(vyw602, vyw612)
new_ltEs19(vyw67, vyw68, ty_Ordering) → new_ltEs16(vyw67, vyw68)
new_esEs26(vyw401, vyw3001, app(app(ty_@2, dd), de)) → new_esEs12(vyw401, vyw3001, dd, de)
new_ltEs24(vyw60, vyw61, app(app(ty_@2, eba), ebb)) → new_ltEs7(vyw60, vyw61, eba, ebb)
new_esEs14(Just(vyw400), Just(vyw3000), ty_Bool) → new_esEs23(vyw400, vyw3000)
new_compare110(vyw121, vyw122, True, cgh, cha) → LT
new_lt20(vyw98, vyw100, ty_Char) → new_lt11(vyw98, vyw100)
new_esEs40(vyw400, vyw3000, app(app(ty_Either, gag), gah)) → new_esEs22(vyw400, vyw3000, gag, gah)
new_lt23(vyw86, vyw89, ty_Double) → new_lt10(vyw86, vyw89)
new_esEs22(Left(vyw400), Left(vyw3000), app(ty_Ratio, eec), dde) → new_esEs13(vyw400, vyw3000, eec)
new_esEs28(vyw601, vyw611, ty_Float) → new_esEs25(vyw601, vyw611)
new_esEs11(vyw40, vyw300, ty_@0) → new_esEs15(vyw40, vyw300)
new_lt4(vyw601, vyw611, ty_Double) → new_lt10(vyw601, vyw611)
new_esEs39(vyw401, vyw3001, app(app(ty_Either, fhe), fhf)) → new_esEs22(vyw401, vyw3001, fhe, fhf)
new_ltEs14(Right(vyw600), Right(vyw610), ceb, app(ty_[], cef)) → new_ltEs11(vyw600, vyw610, cef)
new_esEs32(vyw400, vyw3000, ty_Char) → new_esEs21(vyw400, vyw3000)
new_compare210(vyw60, vyw61, False, gba, gbb) → new_compare110(vyw60, vyw61, new_ltEs24(vyw60, vyw61, gba), gba, gbb)
new_ltEs15(Just(vyw600), Just(vyw610), ty_Double) → new_ltEs4(vyw600, vyw610)
new_lt22(vyw85, vyw88, app(app(ty_@2, eha), ehb)) → new_lt7(vyw85, vyw88, eha, ehb)
new_gt(vyw18, vyw13, app(app(ty_@2, bg), bh)) → new_esEs41(new_compare12(vyw18, vyw13, bg, bh))
new_lt24(vyw4, vyw30, app(ty_Ratio, dhf)) → new_lt6(vyw4, vyw30, dhf)
new_esEs38(vyw402, vyw3002, ty_Bool) → new_esEs23(vyw402, vyw3002)
new_sr(Integer(vyw400), Integer(vyw3010)) → Integer(new_primMulInt(vyw400, vyw3010))
new_esEs4(vyw41, vyw301, ty_Ordering) → new_esEs19(vyw41, vyw301)
new_esEs9(vyw42, vyw302, ty_@0) → new_esEs15(vyw42, vyw302)
new_ltEs19(vyw67, vyw68, app(ty_Maybe, bad)) → new_ltEs15(vyw67, vyw68, bad)
new_esEs7(vyw40, vyw300, ty_Double) → new_esEs24(vyw40, vyw300)
new_esEs28(vyw601, vyw611, app(ty_Maybe, bef)) → new_esEs14(vyw601, vyw611, bef)
new_esEs18(:(vyw400, vyw401), :(vyw3000, vyw3001), ddc) → new_asAs(new_esEs32(vyw400, vyw3000, ddc), new_esEs18(vyw401, vyw3001, ddc))
new_esEs14(Just(vyw400), Just(vyw3000), ty_Integer) → new_esEs16(vyw400, vyw3000)
new_esEs22(Right(vyw400), Right(vyw3000), ddd, app(ty_[], egb)) → new_esEs18(vyw400, vyw3000, egb)
new_esEs22(Left(vyw400), Left(vyw3000), app(ty_Maybe, eed), dde) → new_esEs14(vyw400, vyw3000, eed)
new_esEs6(vyw40, vyw300, app(app(app(ty_@3, fdc), fdd), fde)) → new_esEs17(vyw40, vyw300, fdc, fdd, fde)
new_ltEs23(vyw87, vyw90, ty_Integer) → new_ltEs8(vyw87, vyw90)
new_esEs22(Left(vyw400), Left(vyw3000), ty_Ordering, dde) → new_esEs19(vyw400, vyw3000)
new_esEs14(Just(vyw400), Just(vyw3000), app(app(app(ty_@3, cgb), cgc), cgd)) → new_esEs17(vyw400, vyw3000, cgb, cgc, cgd)
new_compare16(@0, @0) → EQ
new_esEs31(vyw98, vyw100, app(ty_Maybe, dhb)) → new_esEs14(vyw98, vyw100, dhb)
new_compare9(:%(vyw40, vyw41), :%(vyw300, vyw301), ty_Int) → new_compare14(new_sr0(vyw40, vyw301), new_sr0(vyw300, vyw41))
new_esEs17(@3(vyw400, vyw401, vyw402), @3(vyw3000, vyw3001, vyw3002), dch, dda, ddb) → new_asAs(new_esEs40(vyw400, vyw3000, dch), new_asAs(new_esEs39(vyw401, vyw3001, dda), new_esEs38(vyw402, vyw3002, ddb)))
new_esEs12(@2(vyw400, vyw401), @2(vyw3000, vyw3001), db, dc) → new_asAs(new_esEs27(vyw400, vyw3000, db), new_esEs26(vyw401, vyw3001, dc))
new_esEs36(vyw86, vyw89, ty_Char) → new_esEs21(vyw86, vyw89)
new_ltEs24(vyw60, vyw61, ty_Int) → new_ltEs9(vyw60, vyw61)
new_esEs40(vyw400, vyw3000, app(ty_Maybe, gab)) → new_esEs14(vyw400, vyw3000, gab)
new_compare0(:(vyw40, vyw41), :(vyw300, vyw301), bah) → new_primCompAux0(vyw40, vyw300, new_compare0(vyw41, vyw301, bah), bah)
new_compare17(Right(vyw40), Right(vyw300), cce, ccf) → new_compare26(vyw40, vyw300, new_esEs7(vyw40, vyw300, ccf), cce, ccf)
new_lt4(vyw601, vyw611, ty_Char) → new_lt11(vyw601, vyw611)
new_gt(vyw18, vyw13, app(ty_[], ca)) → new_esEs41(new_compare0(vyw18, vyw13, ca))
new_esEs36(vyw86, vyw89, ty_Bool) → new_esEs23(vyw86, vyw89)
new_esEs5(vyw40, vyw300, ty_Float) → new_esEs25(vyw40, vyw300)
new_esEs40(vyw400, vyw3000, ty_Char) → new_esEs21(vyw400, vyw3000)
new_esEs37(vyw85, vyw88, ty_@0) → new_esEs15(vyw85, vyw88)
new_esEs27(vyw400, vyw3000, ty_Double) → new_esEs24(vyw400, vyw3000)
new_esEs9(vyw42, vyw302, app(ty_Maybe, bhb)) → new_esEs14(vyw42, vyw302, bhb)
new_esEs27(vyw400, vyw3000, app(app(ty_Either, fg), fh)) → new_esEs22(vyw400, vyw3000, fg, fh)
new_lt23(vyw86, vyw89, app(app(app(ty_@3, fcc), fcd), fce)) → new_lt19(vyw86, vyw89, fcc, fcd, fce)
new_esEs31(vyw98, vyw100, ty_Char) → new_esEs21(vyw98, vyw100)
new_lt4(vyw601, vyw611, app(ty_Maybe, bef)) → new_lt16(vyw601, vyw611, bef)
new_esEs9(vyw42, vyw302, app(ty_[], bhf)) → new_esEs18(vyw42, vyw302, bhf)
new_pePe(False, vyw177) → vyw177
new_esEs19(GT, GT) → True
new_esEs6(vyw40, vyw300, app(app(ty_@2, fcg), fch)) → new_esEs12(vyw40, vyw300, fcg, fch)
new_esEs26(vyw401, vyw3001, ty_Float) → new_esEs25(vyw401, vyw3001)
new_esEs36(vyw86, vyw89, app(ty_[], fbg)) → new_esEs18(vyw86, vyw89, fbg)
new_gt(vyw18, vyw13, ty_Char) → new_esEs41(new_compare6(vyw18, vyw13))
new_ltEs23(vyw87, vyw90, ty_Bool) → new_ltEs17(vyw87, vyw90)
new_esEs8(vyw40, vyw300, ty_Int) → new_esEs20(vyw40, vyw300)
new_esEs37(vyw85, vyw88, app(ty_Ratio, egh)) → new_esEs13(vyw85, vyw88, egh)
new_esEs14(Just(vyw400), Just(vyw3000), app(app(ty_Either, cgf), cgg)) → new_esEs22(vyw400, vyw3000, cgf, cgg)
new_ltEs23(vyw87, vyw90, app(app(ty_Either, faf), fag)) → new_ltEs14(vyw87, vyw90, faf, fag)
new_esEs6(vyw40, vyw300, app(ty_[], fdf)) → new_esEs18(vyw40, vyw300, fdf)
new_esEs31(vyw98, vyw100, app(app(ty_Either, dgh), dha)) → new_esEs22(vyw98, vyw100, dgh, dha)
new_ltEs21(vyw99, vyw101, ty_Double) → new_ltEs4(vyw99, vyw101)
new_esEs28(vyw601, vyw611, ty_@0) → new_esEs15(vyw601, vyw611)
new_lt4(vyw601, vyw611, ty_Int) → new_lt9(vyw601, vyw611)
new_lt20(vyw98, vyw100, ty_Ordering) → new_lt17(vyw98, vyw100)
new_lt4(vyw601, vyw611, ty_@0) → new_lt14(vyw601, vyw611)
new_compare18(Nothing, Just(vyw300), chb) → LT
new_ltEs22(vyw601, vyw611, ty_Ordering) → new_ltEs16(vyw601, vyw611)
new_esEs27(vyw400, vyw3000, app(app(app(ty_@3, fb), fc), fd)) → new_esEs17(vyw400, vyw3000, fb, fc, fd)
new_esEs31(vyw98, vyw100, app(app(app(ty_@3, dhc), dhd), dhe)) → new_esEs17(vyw98, vyw100, dhc, dhd, dhe)
new_compare18(Just(vyw40), Just(vyw300), chb) → new_compare25(vyw40, vyw300, new_esEs8(vyw40, vyw300, chb), chb)
new_compare10(vyw136, vyw137, True, da) → LT
new_esEs9(vyw42, vyw302, ty_Bool) → new_esEs23(vyw42, vyw302)
new_lt21(vyw600, vyw610, ty_Double) → new_lt10(vyw600, vyw610)
new_esEs22(Right(vyw400), Right(vyw3000), ddd, ty_Char) → new_esEs21(vyw400, vyw3000)
new_lt21(vyw600, vyw610, ty_Ordering) → new_lt17(vyw600, vyw610)
new_compare7(Double(vyw40, vyw41), Double(vyw300, vyw301)) → new_compare14(new_sr0(vyw40, vyw300), new_sr0(vyw41, vyw301))
new_ltEs22(vyw601, vyw611, app(app(app(ty_@3, ecb), ecc), ecd)) → new_ltEs18(vyw601, vyw611, ecb, ecc, ecd)
new_ltEs20(vyw602, vyw612, app(app(ty_@2, bcg), bch)) → new_ltEs7(vyw602, vyw612, bcg, bch)
new_primCompAux0(vyw40, vyw300, vyw39, bah) → new_primCompAux00(vyw39, new_compare8(vyw40, vyw300, bah))
new_esEs10(vyw41, vyw301, ty_Float) → new_esEs25(vyw41, vyw301)
new_esEs37(vyw85, vyw88, ty_Float) → new_esEs25(vyw85, vyw88)
new_ltEs5(vyw74, vyw75, app(app(ty_@2, gc), gd)) → new_ltEs7(vyw74, vyw75, gc, gd)
new_esEs4(vyw41, vyw301, ty_Integer) → new_esEs16(vyw41, vyw301)
new_lt5(vyw600, vyw610, app(app(app(ty_@3, bga), bgb), bgc)) → new_lt19(vyw600, vyw610, bga, bgb, bgc)
new_ltEs22(vyw601, vyw611, ty_Bool) → new_ltEs17(vyw601, vyw611)
new_esEs8(vyw40, vyw300, app(app(ty_Either, def), deg)) → new_esEs22(vyw40, vyw300, def, deg)
new_compare19(False, True) → LT
new_esEs28(vyw601, vyw611, ty_Integer) → new_esEs16(vyw601, vyw611)
new_esEs39(vyw401, vyw3001, app(app(app(ty_@3, fha), fhb), fhc)) → new_esEs17(vyw401, vyw3001, fha, fhb, fhc)
new_compare0([], [], bah) → EQ
new_pePe(True, vyw177) → True
new_primEqNat0(Zero, Zero) → True
new_lt5(vyw600, vyw610, ty_Bool) → new_lt18(vyw600, vyw610)
new_ltEs14(Left(vyw600), Left(vyw610), ty_Ordering, cch) → new_ltEs16(vyw600, vyw610)
new_esEs10(vyw41, vyw301, app(app(app(ty_@3, cae), caf), cag)) → new_esEs17(vyw41, vyw301, cae, caf, cag)
new_ltEs14(Right(vyw600), Right(vyw610), ceb, ty_Double) → new_ltEs4(vyw600, vyw610)
new_esEs13(:%(vyw400, vyw401), :%(vyw3000, vyw3001), dcg) → new_asAs(new_esEs35(vyw400, vyw3000, dcg), new_esEs34(vyw401, vyw3001, dcg))
new_esEs27(vyw400, vyw3000, app(ty_Ratio, eh)) → new_esEs13(vyw400, vyw3000, eh)
new_ltEs10(vyw60, vyw61) → new_fsEs(new_compare6(vyw60, vyw61))
new_esEs39(vyw401, vyw3001, app(ty_[], fhd)) → new_esEs18(vyw401, vyw3001, fhd)
new_esEs23(False, False) → True
new_ltEs16(EQ, LT) → False
new_ltEs14(Right(vyw600), Right(vyw610), ceb, app(ty_Maybe, cfa)) → new_ltEs15(vyw600, vyw610, cfa)
new_compare29(vyw98, vyw99, vyw100, vyw101, False, deh, dfa) → new_compare114(vyw98, vyw99, vyw100, vyw101, new_lt20(vyw98, vyw100, deh), new_asAs(new_esEs31(vyw98, vyw100, deh), new_ltEs21(vyw99, vyw101, dfa)), deh, dfa)
new_compare110(vyw121, vyw122, False, cgh, cha) → GT
new_esEs31(vyw98, vyw100, ty_Int) → new_esEs20(vyw98, vyw100)
new_esEs40(vyw400, vyw3000, app(ty_[], gaf)) → new_esEs18(vyw400, vyw3000, gaf)
new_ltEs16(GT, EQ) → False
new_esEs38(vyw402, vyw3002, app(ty_Ratio, ffe)) → new_esEs13(vyw402, vyw3002, ffe)
new_esEs14(Just(vyw400), Just(vyw3000), ty_Float) → new_esEs25(vyw400, vyw3000)
new_esEs22(Right(vyw400), Right(vyw3000), ddd, ty_Ordering) → new_esEs19(vyw400, vyw3000)
new_lt24(vyw4, vyw30, app(app(ty_Either, cce), ccf)) → new_lt15(vyw4, vyw30, cce, ccf)
new_primPlusNat0(Succ(vyw1780), vyw30100) → Succ(Succ(new_primPlusNat1(vyw1780, vyw30100)))
new_ltEs15(Just(vyw600), Just(vyw610), ty_Char) → new_ltEs10(vyw600, vyw610)
new_compare8(vyw40, vyw300, app(ty_Maybe, bbg)) → new_compare18(vyw40, vyw300, bbg)
new_esEs7(vyw40, vyw300, ty_Bool) → new_esEs23(vyw40, vyw300)
new_esEs21(Char(vyw400), Char(vyw3000)) → new_primEqNat0(vyw400, vyw3000)
new_lt4(vyw601, vyw611, app(app(app(ty_@3, beg), beh), bfa)) → new_lt19(vyw601, vyw611, beg, beh, bfa)
new_esEs11(vyw40, vyw300, ty_Double) → new_esEs24(vyw40, vyw300)
new_esEs29(vyw600, vyw610, ty_Double) → new_esEs24(vyw600, vyw610)
new_ltEs14(Right(vyw600), Right(vyw610), ceb, app(app(ty_@2, ced), cee)) → new_ltEs7(vyw600, vyw610, ced, cee)
new_esEs40(vyw400, vyw3000, app(app(app(ty_@3, gac), gad), gae)) → new_esEs17(vyw400, vyw3000, gac, gad, gae)
new_primEqInt(Neg(Succ(vyw4000)), Neg(Succ(vyw30000))) → new_primEqNat0(vyw4000, vyw30000)
new_esEs4(vyw41, vyw301, ty_Bool) → new_esEs23(vyw41, vyw301)
new_lt24(vyw4, vyw30, ty_@0) → new_lt14(vyw4, vyw30)
new_esEs19(EQ, EQ) → True
new_primPlusNat1(Zero, Succ(vyw301000)) → Succ(vyw301000)
new_primPlusNat1(Succ(vyw17800), Zero) → Succ(vyw17800)
new_esEs10(vyw41, vyw301, app(ty_[], cah)) → new_esEs18(vyw41, vyw301, cah)
new_esEs8(vyw40, vyw300, ty_Float) → new_esEs25(vyw40, vyw300)
new_ltEs14(Right(vyw600), Left(vyw610), ceb, cch) → False
new_lt22(vyw85, vyw88, app(app(ty_Either, ehd), ehe)) → new_lt15(vyw85, vyw88, ehd, ehe)
new_esEs5(vyw40, vyw300, ty_Integer) → new_esEs16(vyw40, vyw300)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_ltEs22(vyw601, vyw611, app(ty_[], ebf)) → new_ltEs11(vyw601, vyw611, ebf)
new_esEs39(vyw401, vyw3001, ty_Double) → new_esEs24(vyw401, vyw3001)
new_esEs30(EQ) → False
new_ltEs14(Left(vyw600), Left(vyw610), ty_Bool, cch) → new_ltEs17(vyw600, vyw610)
new_lt5(vyw600, vyw610, app(app(ty_@2, bfc), bfd)) → new_lt7(vyw600, vyw610, bfc, bfd)
new_esEs8(vyw40, vyw300, app(ty_Ratio, ddh)) → new_esEs13(vyw40, vyw300, ddh)
new_compare26(vyw67, vyw68, False, hd, he) → new_compare11(vyw67, vyw68, new_ltEs19(vyw67, vyw68, he), hd, he)
new_lt20(vyw98, vyw100, ty_Integer) → new_lt8(vyw98, vyw100)
new_lt9(vyw4, vyw30) → new_esEs30(new_compare14(vyw4, vyw30))
new_compare26(vyw67, vyw68, True, hd, he) → EQ
new_esEs7(vyw40, vyw300, app(ty_Ratio, fec)) → new_esEs13(vyw40, vyw300, fec)
new_esEs28(vyw601, vyw611, ty_Double) → new_esEs24(vyw601, vyw611)
new_ltEs21(vyw99, vyw101, app(app(ty_Either, dff), dfg)) → new_ltEs14(vyw99, vyw101, dff, dfg)
new_lt23(vyw86, vyw89, app(app(ty_Either, fbh), fca)) → new_lt15(vyw86, vyw89, fbh, fca)
new_fsEs(vyw172) → new_not(new_esEs19(vyw172, GT))
new_esEs33(vyw600, vyw610, app(app(ty_Either, eda), edb)) → new_esEs22(vyw600, vyw610, eda, edb)
new_ltEs23(vyw87, vyw90, ty_Char) → new_ltEs10(vyw87, vyw90)
new_compare14(vyw4, vyw30) → new_primCmpInt(vyw4, vyw30)
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_ltEs14(Left(vyw600), Left(vyw610), ty_Int, cch) → new_ltEs9(vyw600, vyw610)
new_esEs19(LT, EQ) → False
new_esEs19(EQ, LT) → False
new_esEs14(Just(vyw400), Just(vyw3000), ty_Int) → new_esEs20(vyw400, vyw3000)
new_esEs38(vyw402, vyw3002, app(app(ty_Either, fgc), fgd)) → new_esEs22(vyw402, vyw3002, fgc, fgd)
new_esEs37(vyw85, vyw88, ty_Double) → new_esEs24(vyw85, vyw88)
new_primEqInt(Pos(Succ(vyw4000)), Pos(Succ(vyw30000))) → new_primEqNat0(vyw4000, vyw30000)
new_ltEs24(vyw60, vyw61, ty_@0) → new_ltEs13(vyw60, vyw61)
new_lt20(vyw98, vyw100, app(ty_[], dgg)) → new_lt12(vyw98, vyw100, dgg)
new_esEs31(vyw98, vyw100, ty_Bool) → new_esEs23(vyw98, vyw100)
new_esEs22(Right(vyw400), Right(vyw3000), ddd, app(ty_Ratio, efe)) → new_esEs13(vyw400, vyw3000, efe)
new_lt24(vyw4, vyw30, app(ty_[], bah)) → new_lt12(vyw4, vyw30, bah)
new_primEqNat0(Succ(vyw4000), Succ(vyw30000)) → new_primEqNat0(vyw4000, vyw30000)
new_ltEs5(vyw74, vyw75, ty_Integer) → new_ltEs8(vyw74, vyw75)
new_esEs26(vyw401, vyw3001, ty_Int) → new_esEs20(vyw401, vyw3001)
new_lt4(vyw601, vyw611, app(ty_Ratio, bdh)) → new_lt6(vyw601, vyw611, bdh)
new_ltEs5(vyw74, vyw75, app(ty_Ratio, gb)) → new_ltEs6(vyw74, vyw75, gb)
new_compare8(vyw40, vyw300, app(app(ty_@2, bbb), bbc)) → new_compare12(vyw40, vyw300, bbb, bbc)
new_primCmpInt(Neg(Succ(vyw400)), Neg(vyw300)) → new_primCmpNat0(vyw300, Succ(vyw400))
new_esEs37(vyw85, vyw88, ty_Integer) → new_esEs16(vyw85, vyw88)
new_esEs38(vyw402, vyw3002, app(ty_Maybe, fff)) → new_esEs14(vyw402, vyw3002, fff)
new_esEs40(vyw400, vyw3000, ty_@0) → new_esEs15(vyw400, vyw3000)
new_esEs5(vyw40, vyw300, ty_Int) → new_esEs20(vyw40, vyw300)
new_esEs11(vyw40, vyw300, app(ty_[], ccb)) → new_esEs18(vyw40, vyw300, ccb)
new_lt21(vyw600, vyw610, app(app(ty_@2, ecf), ecg)) → new_lt7(vyw600, vyw610, ecf, ecg)
new_lt13(vyw4, vyw30) → new_esEs30(new_compare15(vyw4, vyw30))
new_ltEs5(vyw74, vyw75, ty_Double) → new_ltEs4(vyw74, vyw75)
new_lt22(vyw85, vyw88, ty_Char) → new_lt11(vyw85, vyw88)
new_esEs38(vyw402, vyw3002, ty_@0) → new_esEs15(vyw402, vyw3002)
new_esEs28(vyw601, vyw611, app(app(ty_@2, bea), beb)) → new_esEs12(vyw601, vyw611, bea, beb)
new_lt5(vyw600, vyw610, ty_Double) → new_lt10(vyw600, vyw610)
new_lt20(vyw98, vyw100, app(ty_Ratio, dgd)) → new_lt6(vyw98, vyw100, dgd)
new_esEs34(vyw401, vyw3001, ty_Integer) → new_esEs16(vyw401, vyw3001)
new_ltEs21(vyw99, vyw101, ty_Ordering) → new_ltEs16(vyw99, vyw101)
new_primPlusNat1(Succ(vyw17800), Succ(vyw301000)) → Succ(Succ(new_primPlusNat1(vyw17800, vyw301000)))
new_esEs7(vyw40, vyw300, app(app(ty_Either, ffa), ffb)) → new_esEs22(vyw40, vyw300, ffa, ffb)
new_esEs14(Just(vyw400), Just(vyw3000), app(app(ty_@2, cff), cfg)) → new_esEs12(vyw400, vyw3000, cff, cfg)
new_esEs10(vyw41, vyw301, ty_Bool) → new_esEs23(vyw41, vyw301)
new_esEs36(vyw86, vyw89, ty_Float) → new_esEs25(vyw86, vyw89)
new_ltEs14(Right(vyw600), Right(vyw610), ceb, ty_Char) → new_ltEs10(vyw600, vyw610)
new_ltEs14(Left(vyw600), Left(vyw610), app(app(ty_@2, cda), cdb), cch) → new_ltEs7(vyw600, vyw610, cda, cdb)
new_esEs7(vyw40, vyw300, app(app(app(ty_@3, fee), fef), feg)) → new_esEs17(vyw40, vyw300, fee, fef, feg)
new_lt23(vyw86, vyw89, ty_Bool) → new_lt18(vyw86, vyw89)
new_ltEs20(vyw602, vyw612, app(ty_Maybe, bdd)) → new_ltEs15(vyw602, vyw612, bdd)
new_primEqInt(Pos(Zero), Neg(Succ(vyw30000))) → False
new_primEqInt(Neg(Zero), Pos(Succ(vyw30000))) → False
new_ltEs14(Left(vyw600), Left(vyw610), ty_Float, cch) → new_ltEs12(vyw600, vyw610)
new_primCmpInt(Pos(Zero), Pos(Succ(vyw3000))) → new_primCmpNat0(Zero, Succ(vyw3000))
new_esEs31(vyw98, vyw100, ty_Integer) → new_esEs16(vyw98, vyw100)
new_primCompAux00(vyw54, EQ) → vyw54
new_ltEs16(EQ, EQ) → True
new_compare19(False, False) → EQ
new_ltEs20(vyw602, vyw612, ty_Double) → new_ltEs4(vyw602, vyw612)
new_compare8(vyw40, vyw300, app(ty_[], bbd)) → new_compare0(vyw40, vyw300, bbd)
new_ltEs5(vyw74, vyw75, app(app(ty_Either, gf), gg)) → new_ltEs14(vyw74, vyw75, gf, gg)
new_lt4(vyw601, vyw611, ty_Integer) → new_lt8(vyw601, vyw611)
new_esEs22(Right(vyw400), Right(vyw3000), ddd, app(app(app(ty_@3, efg), efh), ega)) → new_esEs17(vyw400, vyw3000, efg, efh, ega)
new_not(False) → True
new_ltEs11(vyw60, vyw61, fcf) → new_fsEs(new_compare0(vyw60, vyw61, fcf))
new_esEs33(vyw600, vyw610, app(app(app(ty_@3, edd), ede), edf)) → new_esEs17(vyw600, vyw610, edd, ede, edf)
new_esEs34(vyw401, vyw3001, ty_Int) → new_esEs20(vyw401, vyw3001)
new_esEs22(Right(vyw400), Right(vyw3000), ddd, ty_Int) → new_esEs20(vyw400, vyw3000)
new_esEs8(vyw40, vyw300, app(ty_Maybe, dea)) → new_esEs14(vyw40, vyw300, dea)
new_esEs39(vyw401, vyw3001, ty_Char) → new_esEs21(vyw401, vyw3001)
new_ltEs14(Right(vyw600), Right(vyw610), ceb, app(ty_Ratio, cec)) → new_ltEs6(vyw600, vyw610, cec)
new_esEs25(Float(vyw400, vyw401), Float(vyw3000, vyw3001)) → new_esEs20(new_sr0(vyw400, vyw3000), new_sr0(vyw401, vyw3001))
new_esEs22(Left(vyw400), Left(vyw3000), ty_Bool, dde) → new_esEs23(vyw400, vyw3000)
new_lt10(vyw4, vyw30) → new_esEs30(new_compare7(vyw4, vyw30))
new_ltEs24(vyw60, vyw61, ty_Integer) → new_ltEs8(vyw60, vyw61)
new_esEs22(Left(vyw400), Left(vyw3000), app(app(ty_Either, efa), efb), dde) → new_esEs22(vyw400, vyw3000, efa, efb)
new_compare8(vyw40, vyw300, ty_Integer) → new_compare13(vyw40, vyw300)
new_compare0(:(vyw40, vyw41), [], bah) → GT
new_ltEs23(vyw87, vyw90, app(ty_Ratio, fab)) → new_ltEs6(vyw87, vyw90, fab)
new_lt22(vyw85, vyw88, ty_Float) → new_lt13(vyw85, vyw88)
new_esEs6(vyw40, vyw300, ty_Char) → new_esEs21(vyw40, vyw300)
new_esEs33(vyw600, vyw610, ty_Integer) → new_esEs16(vyw600, vyw610)
new_esEs6(vyw40, vyw300, ty_Double) → new_esEs24(vyw40, vyw300)
new_lt23(vyw86, vyw89, app(app(ty_@2, fbe), fbf)) → new_lt7(vyw86, vyw89, fbe, fbf)
new_ltEs19(vyw67, vyw68, ty_Int) → new_ltEs9(vyw67, vyw68)
new_esEs20(vyw40, vyw300) → new_primEqInt(vyw40, vyw300)
new_compare114(vyw148, vyw149, vyw150, vyw151, True, vyw153, daf, dag) → new_compare111(vyw148, vyw149, vyw150, vyw151, True, daf, dag)
new_ltEs14(Right(vyw600), Right(vyw610), ceb, ty_Bool) → new_ltEs17(vyw600, vyw610)
new_compare17(Right(vyw40), Left(vyw300), cce, ccf) → GT
new_ltEs20(vyw602, vyw612, ty_Bool) → new_ltEs17(vyw602, vyw612)
new_primMulInt(Neg(vyw400), Neg(vyw3010)) → Pos(new_primMulNat0(vyw400, vyw3010))
new_esEs9(vyw42, vyw302, app(ty_Ratio, bha)) → new_esEs13(vyw42, vyw302, bha)
new_primEqNat0(Zero, Succ(vyw30000)) → False
new_primEqNat0(Succ(vyw4000), Zero) → False
new_lt14(vyw4, vyw30) → new_esEs30(new_compare16(vyw4, vyw30))
new_ltEs4(vyw60, vyw61) → new_fsEs(new_compare7(vyw60, vyw61))
new_esEs7(vyw40, vyw300, ty_@0) → new_esEs15(vyw40, vyw300)
new_ltEs5(vyw74, vyw75, app(ty_[], ge)) → new_ltEs11(vyw74, vyw75, ge)
new_lt23(vyw86, vyw89, app(ty_Ratio, fbd)) → new_lt6(vyw86, vyw89, fbd)
new_ltEs5(vyw74, vyw75, ty_Int) → new_ltEs9(vyw74, vyw75)
new_esEs8(vyw40, vyw300, ty_Char) → new_esEs21(vyw40, vyw300)
new_ltEs15(Just(vyw600), Nothing, chc) → False
new_lt20(vyw98, vyw100, ty_Bool) → new_lt18(vyw98, vyw100)
new_esEs40(vyw400, vyw3000, ty_Integer) → new_esEs16(vyw400, vyw3000)
new_ltEs20(vyw602, vyw612, ty_Ordering) → new_ltEs16(vyw602, vyw612)
new_esEs14(Just(vyw400), Just(vyw3000), ty_Ordering) → new_esEs19(vyw400, vyw3000)
new_esEs40(vyw400, vyw3000, ty_Bool) → new_esEs23(vyw400, vyw3000)
new_ltEs14(Left(vyw600), Left(vyw610), ty_@0, cch) → new_ltEs13(vyw600, vyw610)
new_ltEs22(vyw601, vyw611, ty_Float) → new_ltEs12(vyw601, vyw611)
new_lt22(vyw85, vyw88, app(app(app(ty_@3, ehg), ehh), faa)) → new_lt19(vyw85, vyw88, ehg, ehh, faa)
new_esEs22(Right(vyw400), Right(vyw3000), ddd, app(ty_Maybe, eff)) → new_esEs14(vyw400, vyw3000, eff)
new_primCmpInt(Pos(Zero), Neg(Succ(vyw3000))) → GT
new_esEs4(vyw41, vyw301, app(app(ty_Either, dce), dcf)) → new_esEs22(vyw41, vyw301, dce, dcf)
new_ltEs19(vyw67, vyw68, ty_Bool) → new_ltEs17(vyw67, vyw68)
new_esEs19(LT, LT) → True
new_ltEs23(vyw87, vyw90, ty_Ordering) → new_ltEs16(vyw87, vyw90)
new_esEs14(Just(vyw400), Just(vyw3000), ty_Double) → new_esEs24(vyw400, vyw3000)
new_esEs16(Integer(vyw400), Integer(vyw3000)) → new_primEqInt(vyw400, vyw3000)
new_compare12(@2(vyw40, vyw41), @2(vyw300, vyw301), dbc, dbd) → new_compare29(vyw40, vyw41, vyw300, vyw301, new_asAs(new_esEs5(vyw40, vyw300, dbc), new_esEs4(vyw41, vyw301, dbd)), dbc, dbd)
new_esEs27(vyw400, vyw3000, app(ty_Maybe, fa)) → new_esEs14(vyw400, vyw3000, fa)
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs9(vyw42, vyw302, ty_Float) → new_esEs25(vyw42, vyw302)
new_lt23(vyw86, vyw89, ty_Integer) → new_lt8(vyw86, vyw89)
new_ltEs14(Left(vyw600), Right(vyw610), ceb, cch) → True
new_ltEs6(vyw60, vyw61, gbc) → new_fsEs(new_compare9(vyw60, vyw61, gbc))
new_lt21(vyw600, vyw610, ty_Char) → new_lt11(vyw600, vyw610)
new_esEs8(vyw40, vyw300, ty_Bool) → new_esEs23(vyw40, vyw300)
new_compare5(GT, LT) → GT
new_lt16(vyw4, vyw30, chb) → new_esEs30(new_compare18(vyw4, vyw30, chb))
new_esEs14(Nothing, Nothing, cfe) → True
new_esEs40(vyw400, vyw3000, ty_Ordering) → new_esEs19(vyw400, vyw3000)
new_asAs(False, vyw116) → False
new_esEs6(vyw40, vyw300, app(app(ty_Either, fdg), fdh)) → new_esEs22(vyw40, vyw300, fdg, fdh)
new_ltEs23(vyw87, vyw90, ty_Int) → new_ltEs9(vyw87, vyw90)
new_primMulInt(Neg(vyw400), Pos(vyw3010)) → Neg(new_primMulNat0(vyw400, vyw3010))
new_primMulInt(Pos(vyw400), Neg(vyw3010)) → Neg(new_primMulNat0(vyw400, vyw3010))
new_esEs33(vyw600, vyw610, ty_@0) → new_esEs15(vyw600, vyw610)
new_esEs4(vyw41, vyw301, ty_Int) → new_esEs20(vyw41, vyw301)
new_esEs18([], [], ddc) → True
new_ltEs14(Left(vyw600), Left(vyw610), app(ty_[], cdc), cch) → new_ltEs11(vyw600, vyw610, cdc)
new_esEs32(vyw400, vyw3000, ty_Bool) → new_esEs23(vyw400, vyw3000)
new_ltEs14(Left(vyw600), Left(vyw610), app(ty_Maybe, cdf), cch) → new_ltEs15(vyw600, vyw610, cdf)
new_esEs33(vyw600, vyw610, app(ty_Maybe, edc)) → new_esEs14(vyw600, vyw610, edc)
new_ltEs14(Left(vyw600), Left(vyw610), ty_Double, cch) → new_ltEs4(vyw600, vyw610)
new_esEs4(vyw41, vyw301, app(ty_[], dcd)) → new_esEs18(vyw41, vyw301, dcd)
new_esEs38(vyw402, vyw3002, ty_Integer) → new_esEs16(vyw402, vyw3002)
new_ltEs22(vyw601, vyw611, ty_Integer) → new_ltEs8(vyw601, vyw611)
new_ltEs14(Right(vyw600), Right(vyw610), ceb, app(app(ty_Either, ceg), ceh)) → new_ltEs14(vyw600, vyw610, ceg, ceh)
new_esEs38(vyw402, vyw3002, ty_Double) → new_esEs24(vyw402, vyw3002)
new_esEs40(vyw400, vyw3000, app(ty_Ratio, gaa)) → new_esEs13(vyw400, vyw3000, gaa)
new_esEs36(vyw86, vyw89, ty_Integer) → new_esEs16(vyw86, vyw89)
new_ltEs5(vyw74, vyw75, app(ty_Maybe, gh)) → new_ltEs15(vyw74, vyw75, gh)
new_esEs32(vyw400, vyw3000, app(app(ty_@2, dhg), dhh)) → new_esEs12(vyw400, vyw3000, dhg, dhh)
new_lt20(vyw98, vyw100, ty_Float) → new_lt13(vyw98, vyw100)
new_compare111(vyw148, vyw149, vyw150, vyw151, False, daf, dag) → GT
new_esEs22(Left(vyw400), Left(vyw3000), ty_Double, dde) → new_esEs24(vyw400, vyw3000)
new_esEs40(vyw400, vyw3000, ty_Float) → new_esEs25(vyw400, vyw3000)
new_ltEs24(vyw60, vyw61, app(ty_Ratio, gbc)) → new_ltEs6(vyw60, vyw61, gbc)
new_ltEs14(Right(vyw600), Right(vyw610), ceb, ty_Int) → new_ltEs9(vyw600, vyw610)
new_ltEs14(Left(vyw600), Left(vyw610), app(app(ty_Either, cdd), cde), cch) → new_ltEs14(vyw600, vyw610, cdd, cde)
new_esEs6(vyw40, vyw300, ty_Float) → new_esEs25(vyw40, vyw300)
new_esEs10(vyw41, vyw301, ty_Char) → new_esEs21(vyw41, vyw301)
new_lt15(vyw4, vyw30, cce, ccf) → new_esEs30(new_compare17(vyw4, vyw30, cce, ccf))
new_esEs11(vyw40, vyw300, ty_Bool) → new_esEs23(vyw40, vyw300)
new_esEs41(GT) → True
new_esEs28(vyw601, vyw611, app(ty_Ratio, bdh)) → new_esEs13(vyw601, vyw611, bdh)
new_esEs29(vyw600, vyw610, ty_Int) → new_esEs20(vyw600, vyw610)
new_esEs6(vyw40, vyw300, app(ty_Maybe, fdb)) → new_esEs14(vyw40, vyw300, fdb)
new_esEs28(vyw601, vyw611, app(app(app(ty_@3, beg), beh), bfa)) → new_esEs17(vyw601, vyw611, beg, beh, bfa)
new_lt5(vyw600, vyw610, app(ty_Maybe, bfh)) → new_lt16(vyw600, vyw610, bfh)
new_esEs27(vyw400, vyw3000, ty_Int) → new_esEs20(vyw400, vyw3000)
new_lt20(vyw98, vyw100, app(app(ty_Either, dgh), dha)) → new_lt15(vyw98, vyw100, dgh, dha)
new_ltEs17(False, True) → True
new_esEs26(vyw401, vyw3001, app(app(ty_Either, ed), ee)) → new_esEs22(vyw401, vyw3001, ed, ee)
new_ltEs20(vyw602, vyw612, app(ty_Ratio, bcf)) → new_ltEs6(vyw602, vyw612, bcf)
new_ltEs21(vyw99, vyw101, ty_Bool) → new_ltEs17(vyw99, vyw101)
new_esEs11(vyw40, vyw300, ty_Int) → new_esEs20(vyw40, vyw300)
new_esEs26(vyw401, vyw3001, app(ty_Maybe, dg)) → new_esEs14(vyw401, vyw3001, dg)
new_ltEs23(vyw87, vyw90, app(app(app(ty_@3, fba), fbb), fbc)) → new_ltEs18(vyw87, vyw90, fba, fbb, fbc)
new_esEs8(vyw40, vyw300, app(app(ty_@2, ddf), ddg)) → new_esEs12(vyw40, vyw300, ddf, ddg)
new_ltEs22(vyw601, vyw611, app(app(ty_@2, ebd), ebe)) → new_ltEs7(vyw601, vyw611, ebd, ebe)
new_gt(vyw18, vyw13, ty_Integer) → new_esEs41(new_compare13(vyw18, vyw13))
new_esEs29(vyw600, vyw610, ty_Integer) → new_esEs16(vyw600, vyw610)
new_ltEs21(vyw99, vyw101, ty_Float) → new_ltEs12(vyw99, vyw101)
new_esEs39(vyw401, vyw3001, ty_Integer) → new_esEs16(vyw401, vyw3001)
new_esEs14(Just(vyw400), Just(vyw3000), ty_@0) → new_esEs15(vyw400, vyw3000)
new_esEs29(vyw600, vyw610, ty_Float) → new_esEs25(vyw600, vyw610)
new_esEs7(vyw40, vyw300, ty_Char) → new_esEs21(vyw40, vyw300)
new_esEs33(vyw600, vyw610, app(ty_[], ech)) → new_esEs18(vyw600, vyw610, ech)
new_esEs29(vyw600, vyw610, app(ty_[], bfe)) → new_esEs18(vyw600, vyw610, bfe)
new_primPlusNat1(Zero, Zero) → Zero
new_compare0([], :(vyw300, vyw301), bah) → LT
new_esEs39(vyw401, vyw3001, app(ty_Maybe, fgh)) → new_esEs14(vyw401, vyw3001, fgh)
new_lt21(vyw600, vyw610, app(ty_Ratio, ece)) → new_lt6(vyw600, vyw610, ece)
new_asAs(True, vyw116) → vyw116
new_gt(vyw18, vyw13, ty_Bool) → new_esEs41(new_compare19(vyw18, vyw13))
new_ltEs14(Left(vyw600), Left(vyw610), ty_Char, cch) → new_ltEs10(vyw600, vyw610)
new_ltEs19(vyw67, vyw68, ty_Float) → new_ltEs12(vyw67, vyw68)
new_esEs14(Just(vyw400), Just(vyw3000), app(ty_Ratio, cfh)) → new_esEs13(vyw400, vyw3000, cfh)
new_ltEs16(LT, LT) → True
new_compare17(Left(vyw40), Left(vyw300), cce, ccf) → new_compare210(vyw40, vyw300, new_esEs6(vyw40, vyw300, cce), cce, ccf)
new_compare5(EQ, EQ) → EQ
new_esEs8(vyw40, vyw300, ty_Double) → new_esEs24(vyw40, vyw300)
new_lt5(vyw600, vyw610, ty_Int) → new_lt9(vyw600, vyw610)
new_lt22(vyw85, vyw88, ty_@0) → new_lt14(vyw85, vyw88)
new_ltEs21(vyw99, vyw101, app(app(app(ty_@3, dga), dgb), dgc)) → new_ltEs18(vyw99, vyw101, dga, dgb, dgc)
new_ltEs23(vyw87, vyw90, ty_@0) → new_ltEs13(vyw87, vyw90)
new_esEs22(Right(vyw400), Left(vyw3000), ddd, dde) → False
new_esEs22(Left(vyw400), Right(vyw3000), ddd, dde) → False
new_esEs5(vyw40, vyw300, app(app(ty_Either, ddd), dde)) → new_esEs22(vyw40, vyw300, ddd, dde)
new_ltEs15(Just(vyw600), Just(vyw610), app(app(app(ty_@3, dac), dad), dae)) → new_ltEs18(vyw600, vyw610, dac, dad, dae)
new_gt(vyw18, vyw13, ty_Float) → new_esEs41(new_compare15(vyw18, vyw13))
new_lt24(vyw4, vyw30, ty_Bool) → new_lt18(vyw4, vyw30)
new_lt23(vyw86, vyw89, ty_Float) → new_lt13(vyw86, vyw89)
new_ltEs20(vyw602, vyw612, ty_Char) → new_ltEs10(vyw602, vyw612)
new_lt20(vyw98, vyw100, ty_Double) → new_lt10(vyw98, vyw100)
new_esEs33(vyw600, vyw610, ty_Int) → new_esEs20(vyw600, vyw610)
new_esEs10(vyw41, vyw301, ty_@0) → new_esEs15(vyw41, vyw301)
new_esEs7(vyw40, vyw300, app(ty_[], feh)) → new_esEs18(vyw40, vyw300, feh)
new_gt(vyw18, vyw13, app(app(app(ty_@3, ce), cf), cg)) → new_esEs41(new_compare27(vyw18, vyw13, ce, cf, cg))
new_esEs33(vyw600, vyw610, ty_Float) → new_esEs25(vyw600, vyw610)
new_compare27(@3(vyw40, vyw41, vyw42), @3(vyw300, vyw301, vyw302), bgd, bge, bgf) → new_compare28(vyw40, vyw41, vyw42, vyw300, vyw301, vyw302, new_asAs(new_esEs11(vyw40, vyw300, bgd), new_asAs(new_esEs10(vyw41, vyw301, bge), new_esEs9(vyw42, vyw302, bgf))), bgd, bge, bgf)
new_esEs5(vyw40, vyw300, ty_Char) → new_esEs21(vyw40, vyw300)
new_esEs6(vyw40, vyw300, ty_Int) → new_esEs20(vyw40, vyw300)
new_ltEs15(Just(vyw600), Just(vyw610), app(app(ty_Either, chh), daa)) → new_ltEs14(vyw600, vyw610, chh, daa)
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_compare25(vyw74, vyw75, False, ga) → new_compare10(vyw74, vyw75, new_ltEs5(vyw74, vyw75, ga), ga)
new_esEs5(vyw40, vyw300, ty_@0) → new_esEs15(vyw40, vyw300)
new_not(True) → False
new_ltEs23(vyw87, vyw90, ty_Float) → new_ltEs12(vyw87, vyw90)
new_esEs26(vyw401, vyw3001, ty_@0) → new_esEs15(vyw401, vyw3001)
new_lt21(vyw600, vyw610, ty_Float) → new_lt13(vyw600, vyw610)
new_esEs28(vyw601, vyw611, ty_Char) → new_esEs21(vyw601, vyw611)
new_lt22(vyw85, vyw88, ty_Int) → new_lt9(vyw85, vyw88)
new_lt4(vyw601, vyw611, app(ty_[], bec)) → new_lt12(vyw601, vyw611, bec)
new_compare8(vyw40, vyw300, ty_Ordering) → new_compare5(vyw40, vyw300)
new_ltEs16(GT, GT) → True
new_ltEs17(False, False) → True
new_esEs39(vyw401, vyw3001, ty_Float) → new_esEs25(vyw401, vyw3001)
new_ltEs8(vyw60, vyw61) → new_fsEs(new_compare13(vyw60, vyw61))
new_gt(vyw18, vyw13, ty_@0) → new_esEs41(new_compare16(vyw18, vyw13))
new_ltEs22(vyw601, vyw611, ty_Int) → new_ltEs9(vyw601, vyw611)
new_lt4(vyw601, vyw611, app(app(ty_Either, bed), bee)) → new_lt15(vyw601, vyw611, bed, bee)
new_esEs27(vyw400, vyw3000, ty_Bool) → new_esEs23(vyw400, vyw3000)
new_lt22(vyw85, vyw88, app(ty_Ratio, egh)) → new_lt6(vyw85, vyw88, egh)
new_esEs8(vyw40, vyw300, ty_Integer) → new_esEs16(vyw40, vyw300)
new_esEs6(vyw40, vyw300, ty_Integer) → new_esEs16(vyw40, vyw300)
new_ltEs16(LT, GT) → True
new_esEs27(vyw400, vyw3000, ty_Ordering) → new_esEs19(vyw400, vyw3000)
new_ltEs15(Just(vyw600), Just(vyw610), app(ty_Ratio, chd)) → new_ltEs6(vyw600, vyw610, chd)
new_ltEs21(vyw99, vyw101, ty_Char) → new_ltEs10(vyw99, vyw101)
new_lt5(vyw600, vyw610, ty_Ordering) → new_lt17(vyw600, vyw610)
new_esEs40(vyw400, vyw3000, ty_Double) → new_esEs24(vyw400, vyw3000)
new_primMulNat0(Zero, Zero) → Zero
new_lt24(vyw4, vyw30, ty_Ordering) → new_lt17(vyw4, vyw30)
new_esEs32(vyw400, vyw3000, app(app(ty_Either, eag), eah)) → new_esEs22(vyw400, vyw3000, eag, eah)
new_esEs37(vyw85, vyw88, app(ty_[], ehc)) → new_esEs18(vyw85, vyw88, ehc)
new_esEs32(vyw400, vyw3000, ty_@0) → new_esEs15(vyw400, vyw3000)
new_ltEs20(vyw602, vyw612, ty_Float) → new_ltEs12(vyw602, vyw612)
new_ltEs12(vyw60, vyw61) → new_fsEs(new_compare15(vyw60, vyw61))
new_esEs4(vyw41, vyw301, ty_Char) → new_esEs21(vyw41, vyw301)
new_ltEs15(Nothing, Just(vyw610), chc) → True
new_compare25(vyw74, vyw75, True, ga) → EQ
new_esEs37(vyw85, vyw88, app(ty_Maybe, ehf)) → new_esEs14(vyw85, vyw88, ehf)
new_esEs22(Left(vyw400), Left(vyw3000), ty_Int, dde) → new_esEs20(vyw400, vyw3000)
new_esEs27(vyw400, vyw3000, app(app(ty_@2, ef), eg)) → new_esEs12(vyw400, vyw3000, ef, eg)
new_esEs11(vyw40, vyw300, ty_Integer) → new_esEs16(vyw40, vyw300)
new_compare19(True, False) → GT
new_esEs30(GT) → False
new_esEs37(vyw85, vyw88, app(app(ty_Either, ehd), ehe)) → new_esEs22(vyw85, vyw88, ehd, ehe)
new_gt(vyw18, vyw13, app(ty_Maybe, cd)) → new_esEs41(new_compare18(vyw18, vyw13, cd))
new_ltEs5(vyw74, vyw75, ty_Char) → new_ltEs10(vyw74, vyw75)
new_esEs6(vyw40, vyw300, ty_Ordering) → new_esEs19(vyw40, vyw300)
new_ltEs19(vyw67, vyw68, ty_@0) → new_ltEs13(vyw67, vyw68)
new_esEs36(vyw86, vyw89, app(app(app(ty_@3, fcc), fcd), fce)) → new_esEs17(vyw86, vyw89, fcc, fcd, fce)
new_esEs32(vyw400, vyw3000, ty_Ordering) → new_esEs19(vyw400, vyw3000)
new_esEs32(vyw400, vyw3000, app(ty_[], eaf)) → new_esEs18(vyw400, vyw3000, eaf)
new_esEs14(Just(vyw400), Just(vyw3000), app(ty_[], cge)) → new_esEs18(vyw400, vyw3000, cge)
new_compare113(vyw163, vyw164, vyw165, vyw166, vyw167, vyw168, True, dah, dba, dbb) → LT
new_esEs9(vyw42, vyw302, ty_Char) → new_esEs21(vyw42, vyw302)
new_esEs5(vyw40, vyw300, app(ty_[], ddc)) → new_esEs18(vyw40, vyw300, ddc)
new_esEs33(vyw600, vyw610, ty_Char) → new_esEs21(vyw600, vyw610)
new_ltEs15(Just(vyw600), Just(vyw610), ty_Float) → new_ltEs12(vyw600, vyw610)
new_esEs10(vyw41, vyw301, ty_Double) → new_esEs24(vyw41, vyw301)
new_lt11(vyw4, vyw30) → new_esEs30(new_compare6(vyw4, vyw30))
new_esEs28(vyw601, vyw611, ty_Ordering) → new_esEs19(vyw601, vyw611)
new_esEs26(vyw401, vyw3001, app(app(app(ty_@3, dh), ea), eb)) → new_esEs17(vyw401, vyw3001, dh, ea, eb)
new_esEs38(vyw402, vyw3002, ty_Ordering) → new_esEs19(vyw402, vyw3002)
new_esEs39(vyw401, vyw3001, ty_@0) → new_esEs15(vyw401, vyw3001)
new_esEs22(Right(vyw400), Right(vyw3000), ddd, ty_Bool) → new_esEs23(vyw400, vyw3000)
new_esEs18([], :(vyw3000, vyw3001), ddc) → False
new_esEs18(:(vyw400, vyw401), [], ddc) → False
new_lt19(vyw4, vyw30, bgd, bge, bgf) → new_esEs30(new_compare27(vyw4, vyw30, bgd, bge, bgf))
new_esEs29(vyw600, vyw610, app(ty_Maybe, bfh)) → new_esEs14(vyw600, vyw610, bfh)
new_esEs39(vyw401, vyw3001, app(ty_Ratio, fgg)) → new_esEs13(vyw401, vyw3001, fgg)
new_esEs10(vyw41, vyw301, app(app(ty_@2, caa), cab)) → new_esEs12(vyw41, vyw301, caa, cab)
new_esEs36(vyw86, vyw89, ty_Double) → new_esEs24(vyw86, vyw89)
new_ltEs15(Just(vyw600), Just(vyw610), ty_Bool) → new_ltEs17(vyw600, vyw610)
new_ltEs22(vyw601, vyw611, app(ty_Maybe, eca)) → new_ltEs15(vyw601, vyw611, eca)
new_esEs9(vyw42, vyw302, app(app(ty_Either, bhg), bhh)) → new_esEs22(vyw42, vyw302, bhg, bhh)
new_esEs36(vyw86, vyw89, app(ty_Ratio, fbd)) → new_esEs13(vyw86, vyw89, fbd)
new_esEs24(Double(vyw400, vyw401), Double(vyw3000, vyw3001)) → new_esEs20(new_sr0(vyw400, vyw3000), new_sr0(vyw401, vyw3001))
new_ltEs19(vyw67, vyw68, app(ty_[], baa)) → new_ltEs11(vyw67, vyw68, baa)
new_ltEs16(EQ, GT) → True
new_lt22(vyw85, vyw88, app(ty_[], ehc)) → new_lt12(vyw85, vyw88, ehc)
new_ltEs21(vyw99, vyw101, ty_Int) → new_ltEs9(vyw99, vyw101)
new_ltEs13(vyw60, vyw61) → new_fsEs(new_compare16(vyw60, vyw61))
new_esEs29(vyw600, vyw610, app(ty_Ratio, bfb)) → new_esEs13(vyw600, vyw610, bfb)
new_esEs32(vyw400, vyw3000, ty_Integer) → new_esEs16(vyw400, vyw3000)
new_compare5(GT, EQ) → GT
new_lt20(vyw98, vyw100, app(ty_Maybe, dhb)) → new_lt16(vyw98, vyw100, dhb)
new_lt20(vyw98, vyw100, app(app(ty_@2, dge), dgf)) → new_lt7(vyw98, vyw100, dge, dgf)
new_esEs7(vyw40, vyw300, app(app(ty_@2, fea), feb)) → new_esEs12(vyw40, vyw300, fea, feb)
new_ltEs15(Just(vyw600), Just(vyw610), app(ty_Maybe, dab)) → new_ltEs15(vyw600, vyw610, dab)
new_lt22(vyw85, vyw88, ty_Bool) → new_lt18(vyw85, vyw88)
new_esEs28(vyw601, vyw611, app(app(ty_Either, bed), bee)) → new_esEs22(vyw601, vyw611, bed, bee)
new_primCmpNat0(Zero, Succ(vyw3000)) → LT
new_compare18(Just(vyw40), Nothing, chb) → GT
new_compare8(vyw40, vyw300, app(app(app(ty_@3, bbh), bca), bcb)) → new_compare27(vyw40, vyw300, bbh, bca, bcb)
new_lt5(vyw600, vyw610, ty_Integer) → new_lt8(vyw600, vyw610)
new_esEs5(vyw40, vyw300, ty_Double) → new_esEs24(vyw40, vyw300)
new_esEs38(vyw402, vyw3002, app(ty_[], fgb)) → new_esEs18(vyw402, vyw3002, fgb)
new_lt21(vyw600, vyw610, app(app(app(ty_@3, edd), ede), edf)) → new_lt19(vyw600, vyw610, edd, ede, edf)
new_ltEs18(@3(vyw600, vyw601, vyw602), @3(vyw610, vyw611, vyw612), bcc, bcd, bce) → new_pePe(new_lt5(vyw600, vyw610, bcc), new_asAs(new_esEs29(vyw600, vyw610, bcc), new_pePe(new_lt4(vyw601, vyw611, bcd), new_asAs(new_esEs28(vyw601, vyw611, bcd), new_ltEs20(vyw602, vyw612, bce)))))
new_esEs29(vyw600, vyw610, ty_Ordering) → new_esEs19(vyw600, vyw610)
new_ltEs24(vyw60, vyw61, app(ty_[], fcf)) → new_ltEs11(vyw60, vyw61, fcf)
new_compare10(vyw136, vyw137, False, da) → GT
new_esEs22(Left(vyw400), Left(vyw3000), app(app(ty_@2, eea), eeb), dde) → new_esEs12(vyw400, vyw3000, eea, eeb)
new_lt4(vyw601, vyw611, app(app(ty_@2, bea), beb)) → new_lt7(vyw601, vyw611, bea, beb)
new_esEs37(vyw85, vyw88, ty_Int) → new_esEs20(vyw85, vyw88)
new_compare5(EQ, LT) → GT
new_esEs39(vyw401, vyw3001, app(app(ty_@2, fge), fgf)) → new_esEs12(vyw401, vyw3001, fge, fgf)
new_esEs7(vyw40, vyw300, ty_Float) → new_esEs25(vyw40, vyw300)
new_ltEs14(Left(vyw600), Left(vyw610), app(app(app(ty_@3, cdg), cdh), cea), cch) → new_ltEs18(vyw600, vyw610, cdg, cdh, cea)
new_lt22(vyw85, vyw88, ty_Double) → new_lt10(vyw85, vyw88)
new_esEs22(Left(vyw400), Left(vyw3000), app(app(app(ty_@3, eee), eef), eeg), dde) → new_esEs17(vyw400, vyw3000, eee, eef, eeg)
new_esEs26(vyw401, vyw3001, app(ty_Ratio, df)) → new_esEs13(vyw401, vyw3001, df)
new_ltEs14(Right(vyw600), Right(vyw610), ceb, ty_Integer) → new_ltEs8(vyw600, vyw610)
new_lt24(vyw4, vyw30, ty_Int) → new_lt9(vyw4, vyw30)
new_lt5(vyw600, vyw610, app(ty_[], bfe)) → new_lt12(vyw600, vyw610, bfe)
new_ltEs14(Right(vyw600), Right(vyw610), ceb, ty_Ordering) → new_ltEs16(vyw600, vyw610)
new_compare9(:%(vyw40, vyw41), :%(vyw300, vyw301), ty_Integer) → new_compare13(new_sr(vyw40, vyw301), new_sr(vyw300, vyw41))
new_ltEs24(vyw60, vyw61, ty_Char) → new_ltEs10(vyw60, vyw61)
new_esEs32(vyw400, vyw3000, app(app(app(ty_@3, eac), ead), eae)) → new_esEs17(vyw400, vyw3000, eac, ead, eae)
new_ltEs24(vyw60, vyw61, app(app(app(ty_@3, bcc), bcd), bce)) → new_ltEs18(vyw60, vyw61, bcc, bcd, bce)
new_lt24(vyw4, vyw30, app(ty_Maybe, chb)) → new_lt16(vyw4, vyw30, chb)
new_esEs9(vyw42, vyw302, app(app(app(ty_@3, bhc), bhd), bhe)) → new_esEs17(vyw42, vyw302, bhc, bhd, bhe)
new_lt24(vyw4, vyw30, ty_Float) → new_lt13(vyw4, vyw30)
new_esEs26(vyw401, vyw3001, ty_Ordering) → new_esEs19(vyw401, vyw3001)
new_esEs27(vyw400, vyw3000, ty_Float) → new_esEs25(vyw400, vyw3000)
new_esEs14(Just(vyw400), Just(vyw3000), app(ty_Maybe, cga)) → new_esEs14(vyw400, vyw3000, cga)
new_esEs5(vyw40, vyw300, ty_Bool) → new_esEs23(vyw40, vyw300)
new_ltEs19(vyw67, vyw68, ty_Char) → new_ltEs10(vyw67, vyw68)
new_esEs10(vyw41, vyw301, ty_Int) → new_esEs20(vyw41, vyw301)
new_lt5(vyw600, vyw610, app(ty_Ratio, bfb)) → new_lt6(vyw600, vyw610, bfb)
new_ltEs15(Just(vyw600), Just(vyw610), ty_Int) → new_ltEs9(vyw600, vyw610)
new_esEs14(Nothing, Just(vyw3000), cfe) → False
new_esEs14(Just(vyw400), Nothing, cfe) → False
new_esEs26(vyw401, vyw3001, ty_Double) → new_esEs24(vyw401, vyw3001)
new_esEs10(vyw41, vyw301, ty_Ordering) → new_esEs19(vyw41, vyw301)
new_esEs36(vyw86, vyw89, app(ty_Maybe, fcb)) → new_esEs14(vyw86, vyw89, fcb)
new_ltEs19(vyw67, vyw68, ty_Integer) → new_ltEs8(vyw67, vyw68)
new_ltEs16(LT, EQ) → True
new_ltEs24(vyw60, vyw61, ty_Double) → new_ltEs4(vyw60, vyw61)
new_gt(vyw18, vyw13, app(ty_Ratio, bf)) → new_esEs41(new_compare9(vyw18, vyw13, bf))
new_esEs9(vyw42, vyw302, ty_Integer) → new_esEs16(vyw42, vyw302)
new_esEs8(vyw40, vyw300, ty_@0) → new_esEs15(vyw40, vyw300)
new_esEs7(vyw40, vyw300, ty_Integer) → new_esEs16(vyw40, vyw300)
new_lt23(vyw86, vyw89, ty_@0) → new_lt14(vyw86, vyw89)
new_lt23(vyw86, vyw89, ty_Int) → new_lt9(vyw86, vyw89)
new_ltEs17(True, False) → False
new_ltEs21(vyw99, vyw101, app(ty_Ratio, dfb)) → new_ltEs6(vyw99, vyw101, dfb)
new_compare111(vyw148, vyw149, vyw150, vyw151, True, daf, dag) → LT
new_esEs33(vyw600, vyw610, app(ty_Ratio, ece)) → new_esEs13(vyw600, vyw610, ece)
new_esEs7(vyw40, vyw300, ty_Int) → new_esEs20(vyw40, vyw300)
new_lt21(vyw600, vyw610, app(app(ty_Either, eda), edb)) → new_lt15(vyw600, vyw610, eda, edb)
new_ltEs22(vyw601, vyw611, app(app(ty_Either, ebg), ebh)) → new_ltEs14(vyw601, vyw611, ebg, ebh)
new_primEqInt(Neg(Succ(vyw4000)), Neg(Zero)) → False
new_primEqInt(Neg(Zero), Neg(Succ(vyw30000))) → False
new_ltEs15(Just(vyw600), Just(vyw610), app(app(ty_@2, che), chf)) → new_ltEs7(vyw600, vyw610, che, chf)
new_ltEs9(vyw60, vyw61) → new_fsEs(new_compare14(vyw60, vyw61))
new_esEs39(vyw401, vyw3001, ty_Bool) → new_esEs23(vyw401, vyw3001)
new_ltEs24(vyw60, vyw61, app(ty_Maybe, chc)) → new_ltEs15(vyw60, vyw61, chc)
new_esEs7(vyw40, vyw300, ty_Ordering) → new_esEs19(vyw40, vyw300)
new_ltEs21(vyw99, vyw101, app(ty_[], dfe)) → new_ltEs11(vyw99, vyw101, dfe)
new_esEs14(Just(vyw400), Just(vyw3000), ty_Char) → new_esEs21(vyw400, vyw3000)
new_esEs26(vyw401, vyw3001, app(ty_[], ec)) → new_esEs18(vyw401, vyw3001, ec)
new_ltEs16(GT, LT) → False
new_gt(vyw18, vyw13, ty_Ordering) → new_esEs41(new_compare5(vyw18, vyw13))
new_ltEs14(Right(vyw600), Right(vyw610), ceb, ty_@0) → new_ltEs13(vyw600, vyw610)
new_primCmpNat0(Succ(vyw400), Succ(vyw3000)) → new_primCmpNat0(vyw400, vyw3000)
new_esEs26(vyw401, vyw3001, ty_Integer) → new_esEs16(vyw401, vyw3001)
new_esEs22(Left(vyw400), Left(vyw3000), app(ty_[], eeh), dde) → new_esEs18(vyw400, vyw3000, eeh)
new_ltEs5(vyw74, vyw75, ty_Ordering) → new_ltEs16(vyw74, vyw75)
new_esEs30(LT) → True
new_compare8(vyw40, vyw300, app(app(ty_Either, bbe), bbf)) → new_compare17(vyw40, vyw300, bbe, bbf)
new_esEs31(vyw98, vyw100, ty_Float) → new_esEs25(vyw98, vyw100)
new_ltEs5(vyw74, vyw75, ty_Bool) → new_ltEs17(vyw74, vyw75)
new_primCompAux00(vyw54, LT) → LT
new_ltEs19(vyw67, vyw68, app(app(app(ty_@3, bae), baf), bag)) → new_ltEs18(vyw67, vyw68, bae, baf, bag)
new_lt17(vyw4, vyw30) → new_esEs30(new_compare5(vyw4, vyw30))
new_esEs11(vyw40, vyw300, app(ty_Maybe, cbf)) → new_esEs14(vyw40, vyw300, cbf)
new_esEs32(vyw400, vyw3000, app(ty_Maybe, eab)) → new_esEs14(vyw400, vyw3000, eab)
new_ltEs5(vyw74, vyw75, app(app(app(ty_@3, ha), hb), hc)) → new_ltEs18(vyw74, vyw75, ha, hb, hc)
new_esEs36(vyw86, vyw89, app(app(ty_Either, fbh), fca)) → new_esEs22(vyw86, vyw89, fbh, fca)
new_primEqInt(Pos(Succ(vyw4000)), Pos(Zero)) → False
new_primEqInt(Pos(Zero), Pos(Succ(vyw30000))) → False
new_ltEs5(vyw74, vyw75, ty_@0) → new_ltEs13(vyw74, vyw75)
new_esEs26(vyw401, vyw3001, ty_Char) → new_esEs21(vyw401, vyw3001)
new_esEs5(vyw40, vyw300, app(ty_Ratio, dcg)) → new_esEs13(vyw40, vyw300, dcg)
new_esEs5(vyw40, vyw300, ty_Ordering) → new_esEs19(vyw40, vyw300)
new_primCmpNat0(Zero, Zero) → EQ
new_primCmpNat0(Succ(vyw400), Zero) → GT
new_lt5(vyw600, vyw610, app(app(ty_Either, bff), bfg)) → new_lt15(vyw600, vyw610, bff, bfg)
new_gt(vyw18, vyw13, ty_Int) → new_esEs41(new_compare14(vyw18, vyw13))
new_primCmpInt(Neg(Zero), Pos(Succ(vyw3000))) → LT
new_compare11(vyw128, vyw129, True, edg, edh) → LT
new_ltEs22(vyw601, vyw611, ty_Char) → new_ltEs10(vyw601, vyw611)
new_esEs8(vyw40, vyw300, app(ty_[], dee)) → new_esEs18(vyw40, vyw300, dee)
new_esEs37(vyw85, vyw88, app(app(ty_@2, eha), ehb)) → new_esEs12(vyw85, vyw88, eha, ehb)
new_lt21(vyw600, vyw610, ty_Integer) → new_lt8(vyw600, vyw610)
new_lt24(vyw4, vyw30, app(app(ty_@2, dbc), dbd)) → new_lt7(vyw4, vyw30, dbc, dbd)
new_esEs23(True, True) → True
new_esEs37(vyw85, vyw88, app(app(app(ty_@3, ehg), ehh), faa)) → new_esEs17(vyw85, vyw88, ehg, ehh, faa)
new_primEqInt(Pos(Succ(vyw4000)), Neg(vyw3000)) → False
new_primEqInt(Neg(Succ(vyw4000)), Pos(vyw3000)) → False
new_compare28(vyw85, vyw86, vyw87, vyw88, vyw89, vyw90, False, ege, egf, egg) → new_compare112(vyw85, vyw86, vyw87, vyw88, vyw89, vyw90, new_lt22(vyw85, vyw88, ege), new_asAs(new_esEs37(vyw85, vyw88, ege), new_pePe(new_lt23(vyw86, vyw89, egf), new_asAs(new_esEs36(vyw86, vyw89, egf), new_ltEs23(vyw87, vyw90, egg)))), ege, egf, egg)
new_esEs38(vyw402, vyw3002, app(app(ty_@2, ffc), ffd)) → new_esEs12(vyw402, vyw3002, ffc, ffd)
new_esEs22(Left(vyw400), Left(vyw3000), ty_Char, dde) → new_esEs21(vyw400, vyw3000)
new_compare113(vyw163, vyw164, vyw165, vyw166, vyw167, vyw168, False, dah, dba, dbb) → GT
new_esEs22(Left(vyw400), Left(vyw3000), ty_@0, dde) → new_esEs15(vyw400, vyw3000)
new_esEs23(False, True) → False
new_esEs23(True, False) → False
new_ltEs14(Right(vyw600), Right(vyw610), ceb, app(app(app(ty_@3, cfb), cfc), cfd)) → new_ltEs18(vyw600, vyw610, cfb, cfc, cfd)
new_esEs11(vyw40, vyw300, ty_Float) → new_esEs25(vyw40, vyw300)
new_esEs33(vyw600, vyw610, ty_Bool) → new_esEs23(vyw600, vyw610)
new_esEs4(vyw41, vyw301, ty_Double) → new_esEs24(vyw41, vyw301)
new_esEs41(EQ) → False
new_lt4(vyw601, vyw611, ty_Float) → new_lt13(vyw601, vyw611)
new_esEs11(vyw40, vyw300, ty_Ordering) → new_esEs19(vyw40, vyw300)
new_esEs22(Left(vyw400), Left(vyw3000), ty_Integer, dde) → new_esEs16(vyw400, vyw3000)
new_compare8(vyw40, vyw300, app(ty_Ratio, bba)) → new_compare9(vyw40, vyw300, bba)
new_lt22(vyw85, vyw88, app(ty_Maybe, ehf)) → new_lt16(vyw85, vyw88, ehf)
new_ltEs19(vyw67, vyw68, ty_Double) → new_ltEs4(vyw67, vyw68)
new_lt8(vyw4, vyw30) → new_esEs30(new_compare13(vyw4, vyw30))
new_esEs29(vyw600, vyw610, ty_Bool) → new_esEs23(vyw600, vyw610)
new_gt(vyw18, vyw13, app(app(ty_Either, cb), cc)) → new_esEs41(new_compare17(vyw18, vyw13, cb, cc))
new_compare210(vyw60, vyw61, True, gba, gbb) → EQ
new_primCmpInt(Pos(Succ(vyw400)), Pos(vyw300)) → new_primCmpNat0(Succ(vyw400), vyw300)
new_primPlusNat0(Zero, vyw30100) → Succ(vyw30100)
new_lt21(vyw600, vyw610, app(ty_[], ech)) → new_lt12(vyw600, vyw610, ech)
new_ltEs21(vyw99, vyw101, app(ty_Maybe, dfh)) → new_ltEs15(vyw99, vyw101, dfh)
new_esEs8(vyw40, vyw300, ty_Ordering) → new_esEs19(vyw40, vyw300)
new_compare29(vyw98, vyw99, vyw100, vyw101, True, deh, dfa) → EQ
new_compare8(vyw40, vyw300, ty_Double) → new_compare7(vyw40, vyw300)
new_esEs4(vyw41, vyw301, app(app(app(ty_@3, dca), dcb), dcc)) → new_esEs17(vyw41, vyw301, dca, dcb, dcc)
new_ltEs24(vyw60, vyw61, ty_Float) → new_ltEs12(vyw60, vyw61)
new_esEs31(vyw98, vyw100, ty_@0) → new_esEs15(vyw98, vyw100)
new_lt21(vyw600, vyw610, ty_@0) → new_lt14(vyw600, vyw610)
new_ltEs22(vyw601, vyw611, app(ty_Ratio, ebc)) → new_ltEs6(vyw601, vyw611, ebc)
new_ltEs14(Left(vyw600), Left(vyw610), ty_Integer, cch) → new_ltEs8(vyw600, vyw610)
new_lt24(vyw4, vyw30, ty_Char) → new_lt11(vyw4, vyw30)
new_esEs11(vyw40, vyw300, ty_Char) → new_esEs21(vyw40, vyw300)
new_lt22(vyw85, vyw88, ty_Ordering) → new_lt17(vyw85, vyw88)
new_ltEs22(vyw601, vyw611, ty_Double) → new_ltEs4(vyw601, vyw611)
new_esEs40(vyw400, vyw3000, app(app(ty_@2, fhg), fhh)) → new_esEs12(vyw400, vyw3000, fhg, fhh)
new_compare19(True, True) → EQ
new_ltEs5(vyw74, vyw75, ty_Float) → new_ltEs12(vyw74, vyw75)
new_compare114(vyw148, vyw149, vyw150, vyw151, False, vyw153, daf, dag) → new_compare111(vyw148, vyw149, vyw150, vyw151, vyw153, daf, dag)
new_esEs27(vyw400, vyw3000, app(ty_[], ff)) → new_esEs18(vyw400, vyw3000, ff)
new_esEs19(LT, GT) → False
new_esEs19(GT, LT) → False
new_compare17(Left(vyw40), Right(vyw300), cce, ccf) → LT
new_compare11(vyw128, vyw129, False, edg, edh) → GT
new_ltEs24(vyw60, vyw61, app(app(ty_Either, ceb), cch)) → new_ltEs14(vyw60, vyw61, ceb, cch)
new_lt22(vyw85, vyw88, ty_Integer) → new_lt8(vyw85, vyw88)
new_lt23(vyw86, vyw89, app(ty_[], fbg)) → new_lt12(vyw86, vyw89, fbg)
new_primCmpInt(Pos(Succ(vyw400)), Neg(vyw300)) → GT
new_esEs11(vyw40, vyw300, app(app(app(ty_@3, cbg), cbh), cca)) → new_esEs17(vyw40, vyw300, cbg, cbh, cca)
new_ltEs23(vyw87, vyw90, app(ty_Maybe, fah)) → new_ltEs15(vyw87, vyw90, fah)
new_esEs22(Right(vyw400), Right(vyw3000), ddd, ty_Integer) → new_esEs16(vyw400, vyw3000)
new_esEs27(vyw400, vyw3000, ty_@0) → new_esEs15(vyw400, vyw3000)
new_esEs6(vyw40, vyw300, ty_Bool) → new_esEs23(vyw40, vyw300)
new_esEs31(vyw98, vyw100, app(ty_[], dgg)) → new_esEs18(vyw98, vyw100, dgg)
new_primMulInt(Pos(vyw400), Pos(vyw3010)) → Pos(new_primMulNat0(vyw400, vyw3010))
new_ltEs19(vyw67, vyw68, app(ty_Ratio, hf)) → new_ltEs6(vyw67, vyw68, hf)
new_esEs38(vyw402, vyw3002, ty_Char) → new_esEs21(vyw402, vyw3002)
new_ltEs23(vyw87, vyw90, app(app(ty_@2, fac), fad)) → new_ltEs7(vyw87, vyw90, fac, fad)
new_lt20(vyw98, vyw100, ty_@0) → new_lt14(vyw98, vyw100)
new_esEs9(vyw42, vyw302, ty_Double) → new_esEs24(vyw42, vyw302)
new_ltEs22(vyw601, vyw611, ty_@0) → new_ltEs13(vyw601, vyw611)
new_esEs39(vyw401, vyw3001, ty_Int) → new_esEs20(vyw401, vyw3001)
new_esEs22(Right(vyw400), Right(vyw3000), ddd, ty_@0) → new_esEs15(vyw400, vyw3000)
new_esEs35(vyw400, vyw3000, ty_Integer) → new_esEs16(vyw400, vyw3000)
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_lt23(vyw86, vyw89, ty_Char) → new_lt11(vyw86, vyw89)
new_esEs4(vyw41, vyw301, ty_Float) → new_esEs25(vyw41, vyw301)
new_lt12(vyw4, vyw30, bah) → new_esEs30(new_compare0(vyw4, vyw30, bah))
new_ltEs21(vyw99, vyw101, app(app(ty_@2, dfc), dfd)) → new_ltEs7(vyw99, vyw101, dfc, dfd)
new_lt24(vyw4, vyw30, app(app(app(ty_@3, bgd), bge), bgf)) → new_lt19(vyw4, vyw30, bgd, bge, bgf)
new_lt24(vyw4, vyw30, ty_Double) → new_lt10(vyw4, vyw30)
new_lt6(vyw4, vyw30, dhf) → new_esEs30(new_compare9(vyw4, vyw30, dhf))
new_esEs27(vyw400, vyw3000, ty_Integer) → new_esEs16(vyw400, vyw3000)
new_esEs9(vyw42, vyw302, ty_Ordering) → new_esEs19(vyw42, vyw302)
new_ltEs24(vyw60, vyw61, ty_Ordering) → new_ltEs16(vyw60, vyw61)
new_lt23(vyw86, vyw89, ty_Ordering) → new_lt17(vyw86, vyw89)
new_compare18(Nothing, Nothing, chb) → EQ
new_compare5(LT, GT) → LT
new_ltEs7(@2(vyw600, vyw601), @2(vyw610, vyw611), eba, ebb) → new_pePe(new_lt21(vyw600, vyw610, eba), new_asAs(new_esEs33(vyw600, vyw610, eba), new_ltEs22(vyw601, vyw611, ebb)))
new_primCmpInt(Neg(Zero), Neg(Succ(vyw3000))) → new_primCmpNat0(Succ(vyw3000), Zero)
new_esEs29(vyw600, vyw610, ty_@0) → new_esEs15(vyw600, vyw610)
new_esEs37(vyw85, vyw88, ty_Bool) → new_esEs23(vyw85, vyw88)
new_sr0(vyw40, vyw301) → new_primMulInt(vyw40, vyw301)
new_compare8(vyw40, vyw300, ty_Char) → new_compare6(vyw40, vyw300)
new_compare5(LT, LT) → EQ
new_esEs22(Right(vyw400), Right(vyw3000), ddd, ty_Double) → new_esEs24(vyw400, vyw3000)
new_compare112(vyw163, vyw164, vyw165, vyw166, vyw167, vyw168, False, vyw170, dah, dba, dbb) → new_compare113(vyw163, vyw164, vyw165, vyw166, vyw167, vyw168, vyw170, dah, dba, dbb)
new_lt4(vyw601, vyw611, ty_Ordering) → new_lt17(vyw601, vyw611)
new_esEs31(vyw98, vyw100, ty_Double) → new_esEs24(vyw98, vyw100)
new_esEs19(EQ, GT) → False
new_esEs19(GT, EQ) → False
new_ltEs21(vyw99, vyw101, ty_Integer) → new_ltEs8(vyw99, vyw101)
new_ltEs23(vyw87, vyw90, ty_Double) → new_ltEs4(vyw87, vyw90)
new_esEs28(vyw601, vyw611, app(ty_[], bec)) → new_esEs18(vyw601, vyw611, bec)
new_ltEs24(vyw60, vyw61, ty_Bool) → new_ltEs17(vyw60, vyw61)
new_esEs33(vyw600, vyw610, ty_Double) → new_esEs24(vyw600, vyw610)
new_esEs36(vyw86, vyw89, app(app(ty_@2, fbe), fbf)) → new_esEs12(vyw86, vyw89, fbe, fbf)
new_esEs15(@0, @0) → True
new_ltEs15(Just(vyw600), Just(vyw610), app(ty_[], chg)) → new_ltEs11(vyw600, vyw610, chg)
new_esEs32(vyw400, vyw3000, app(ty_Ratio, eaa)) → new_esEs13(vyw400, vyw3000, eaa)
new_esEs37(vyw85, vyw88, ty_Char) → new_esEs21(vyw85, vyw88)
new_ltEs20(vyw602, vyw612, app(app(ty_Either, bdb), bdc)) → new_ltEs14(vyw602, vyw612, bdb, bdc)
new_ltEs19(vyw67, vyw68, app(app(ty_@2, hg), hh)) → new_ltEs7(vyw67, vyw68, hg, hh)
new_esEs6(vyw40, vyw300, app(ty_Ratio, fda)) → new_esEs13(vyw40, vyw300, fda)
new_esEs38(vyw402, vyw3002, ty_Float) → new_esEs25(vyw402, vyw3002)
new_ltEs19(vyw67, vyw68, app(app(ty_Either, bab), bac)) → new_ltEs14(vyw67, vyw68, bab, bac)
new_ltEs20(vyw602, vyw612, app(ty_[], bda)) → new_ltEs11(vyw602, vyw612, bda)
new_primMulNat0(Zero, Succ(vyw30100)) → Zero
new_primMulNat0(Succ(vyw4000), Zero) → Zero
new_ltEs14(Left(vyw600), Left(vyw610), app(ty_Ratio, ccg), cch) → new_ltEs6(vyw600, vyw610, ccg)
new_compare8(vyw40, vyw300, ty_Bool) → new_compare19(vyw40, vyw300)
new_esEs33(vyw600, vyw610, ty_Ordering) → new_esEs19(vyw600, vyw610)
new_esEs31(vyw98, vyw100, ty_Ordering) → new_esEs19(vyw98, vyw100)
new_esEs28(vyw601, vyw611, ty_Int) → new_esEs20(vyw601, vyw611)
new_esEs10(vyw41, vyw301, app(ty_Ratio, cac)) → new_esEs13(vyw41, vyw301, cac)
new_ltEs14(Right(vyw600), Right(vyw610), ceb, ty_Float) → new_ltEs12(vyw600, vyw610)
new_lt5(vyw600, vyw610, ty_Float) → new_lt13(vyw600, vyw610)
new_compare5(LT, EQ) → LT
new_esEs5(vyw40, vyw300, app(app(ty_@2, db), dc)) → new_esEs12(vyw40, vyw300, db, dc)
new_lt21(vyw600, vyw610, ty_Int) → new_lt9(vyw600, vyw610)
new_compare5(GT, GT) → EQ
new_esEs5(vyw40, vyw300, app(ty_Maybe, cfe)) → new_esEs14(vyw40, vyw300, cfe)
new_compare8(vyw40, vyw300, ty_Float) → new_compare15(vyw40, vyw300)
new_compare8(vyw40, vyw300, ty_Int) → new_compare14(vyw40, vyw300)
new_ltEs20(vyw602, vyw612, app(app(app(ty_@3, bde), bdf), bdg)) → new_ltEs18(vyw602, vyw612, bde, bdf, bdg)
new_ltEs15(Just(vyw600), Just(vyw610), ty_@0) → new_ltEs13(vyw600, vyw610)
new_esEs29(vyw600, vyw610, ty_Char) → new_esEs21(vyw600, vyw610)
new_ltEs17(True, True) → True
new_esEs10(vyw41, vyw301, app(ty_Maybe, cad)) → new_esEs14(vyw41, vyw301, cad)
new_esEs35(vyw400, vyw3000, ty_Int) → new_esEs20(vyw400, vyw3000)
new_esEs36(vyw86, vyw89, ty_@0) → new_esEs15(vyw86, vyw89)
new_lt4(vyw601, vyw611, ty_Bool) → new_lt18(vyw601, vyw611)
new_lt21(vyw600, vyw610, ty_Bool) → new_lt18(vyw600, vyw610)
new_esEs33(vyw600, vyw610, app(app(ty_@2, ecf), ecg)) → new_esEs12(vyw600, vyw610, ecf, ecg)
new_esEs9(vyw42, vyw302, app(app(ty_@2, bgg), bgh)) → new_esEs12(vyw42, vyw302, bgg, bgh)
new_esEs26(vyw401, vyw3001, ty_Bool) → new_esEs23(vyw401, vyw3001)
new_lt5(vyw600, vyw610, ty_Char) → new_lt11(vyw600, vyw610)
new_ltEs15(Nothing, Nothing, chc) → True
new_esEs11(vyw40, vyw300, app(ty_Ratio, cbe)) → new_esEs13(vyw40, vyw300, cbe)
new_ltEs15(Just(vyw600), Just(vyw610), ty_Integer) → new_ltEs8(vyw600, vyw610)
new_esEs41(LT) → False
new_lt23(vyw86, vyw89, app(ty_Maybe, fcb)) → new_lt16(vyw86, vyw89, fcb)
new_esEs4(vyw41, vyw301, ty_@0) → new_esEs15(vyw41, vyw301)
new_compare28(vyw85, vyw86, vyw87, vyw88, vyw89, vyw90, True, ege, egf, egg) → EQ
new_esEs22(Right(vyw400), Right(vyw3000), ddd, ty_Float) → new_esEs25(vyw400, vyw3000)
new_ltEs21(vyw99, vyw101, ty_@0) → new_ltEs13(vyw99, vyw101)
new_compare15(Float(vyw40, vyw41), Float(vyw300, vyw301)) → new_compare14(new_sr0(vyw40, vyw300), new_sr0(vyw41, vyw301))
new_esEs27(vyw400, vyw3000, ty_Char) → new_esEs21(vyw400, vyw3000)
new_lt7(vyw4, vyw30, dbc, dbd) → new_esEs30(new_compare12(vyw4, vyw30, dbc, dbd))
new_esEs8(vyw40, vyw300, app(app(app(ty_@3, deb), dec), ded)) → new_esEs17(vyw40, vyw300, deb, dec, ded)
new_gt(vyw18, vyw13, ty_Double) → new_esEs41(new_compare7(vyw18, vyw13))
new_compare13(Integer(vyw40), Integer(vyw300)) → new_primCmpInt(vyw40, vyw300)
new_esEs4(vyw41, vyw301, app(app(ty_@2, dbe), dbf)) → new_esEs12(vyw41, vyw301, dbe, dbf)
new_esEs10(vyw41, vyw301, ty_Integer) → new_esEs16(vyw41, vyw301)
new_esEs36(vyw86, vyw89, ty_Ordering) → new_esEs19(vyw86, vyw89)
new_esEs32(vyw400, vyw3000, ty_Float) → new_esEs25(vyw400, vyw3000)
new_esEs28(vyw601, vyw611, ty_Bool) → new_esEs23(vyw601, vyw611)
new_esEs31(vyw98, vyw100, app(app(ty_@2, dge), dgf)) → new_esEs12(vyw98, vyw100, dge, dgf)
new_ltEs20(vyw602, vyw612, ty_Integer) → new_ltEs8(vyw602, vyw612)
new_ltEs23(vyw87, vyw90, app(ty_[], fae)) → new_ltEs11(vyw87, vyw90, fae)
new_esEs29(vyw600, vyw610, app(app(ty_Either, bff), bfg)) → new_esEs22(vyw600, vyw610, bff, bfg)
new_esEs36(vyw86, vyw89, ty_Int) → new_esEs20(vyw86, vyw89)
new_esEs29(vyw600, vyw610, app(app(app(ty_@3, bga), bgb), bgc)) → new_esEs17(vyw600, vyw610, bga, bgb, bgc)
new_esEs11(vyw40, vyw300, app(app(ty_@2, cbc), cbd)) → new_esEs12(vyw40, vyw300, cbc, cbd)
new_lt20(vyw98, vyw100, app(app(app(ty_@3, dhc), dhd), dhe)) → new_lt19(vyw98, vyw100, dhc, dhd, dhe)
new_primMulNat0(Succ(vyw4000), Succ(vyw30100)) → new_primPlusNat0(new_primMulNat0(vyw4000, Succ(vyw30100)), vyw30100)
new_lt24(vyw4, vyw30, ty_Integer) → new_lt8(vyw4, vyw30)
new_esEs9(vyw42, vyw302, ty_Int) → new_esEs20(vyw42, vyw302)
new_esEs38(vyw402, vyw3002, app(app(app(ty_@3, ffg), ffh), fga)) → new_esEs17(vyw402, vyw3002, ffg, ffh, fga)
new_esEs5(vyw40, vyw300, app(app(app(ty_@3, dch), dda), ddb)) → new_esEs17(vyw40, vyw300, dch, dda, ddb)
new_ltEs15(Just(vyw600), Just(vyw610), ty_Ordering) → new_ltEs16(vyw600, vyw610)
new_esEs31(vyw98, vyw100, app(ty_Ratio, dgd)) → new_esEs13(vyw98, vyw100, dgd)
new_esEs10(vyw41, vyw301, app(app(ty_Either, cba), cbb)) → new_esEs22(vyw41, vyw301, cba, cbb)
new_compare5(EQ, GT) → LT
new_esEs22(Right(vyw400), Right(vyw3000), ddd, app(app(ty_@2, efc), efd)) → new_esEs12(vyw400, vyw3000, efc, efd)
new_lt20(vyw98, vyw100, ty_Int) → new_lt9(vyw98, vyw100)
new_compare8(vyw40, vyw300, ty_@0) → new_compare16(vyw40, vyw300)
new_esEs29(vyw600, vyw610, app(app(ty_@2, bfc), bfd)) → new_esEs12(vyw600, vyw610, bfc, bfd)
new_esEs37(vyw85, vyw88, ty_Ordering) → new_esEs19(vyw85, vyw88)
new_esEs22(Left(vyw400), Left(vyw3000), ty_Float, dde) → new_esEs25(vyw400, vyw3000)
new_lt18(vyw4, vyw30) → new_esEs30(new_compare19(vyw4, vyw30))
new_esEs32(vyw400, vyw3000, ty_Int) → new_esEs20(vyw400, vyw3000)
new_ltEs20(vyw602, vyw612, ty_@0) → new_ltEs13(vyw602, vyw612)
new_esEs4(vyw41, vyw301, app(ty_Maybe, dbh)) → new_esEs14(vyw41, vyw301, dbh)
new_compare6(Char(vyw40), Char(vyw300)) → new_primCmpNat0(vyw40, vyw300)
new_esEs11(vyw40, vyw300, app(app(ty_Either, ccc), ccd)) → new_esEs22(vyw40, vyw300, ccc, ccd)
new_primCompAux00(vyw54, GT) → GT
new_esEs7(vyw40, vyw300, app(ty_Maybe, fed)) → new_esEs14(vyw40, vyw300, fed)
new_lt5(vyw600, vyw610, ty_@0) → new_lt14(vyw600, vyw610)
new_lt21(vyw600, vyw610, app(ty_Maybe, edc)) → new_lt16(vyw600, vyw610, edc)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_esEs38(vyw402, vyw3002, ty_Int) → new_esEs20(vyw402, vyw3002)
new_compare112(vyw163, vyw164, vyw165, vyw166, vyw167, vyw168, True, vyw170, dah, dba, dbb) → new_compare113(vyw163, vyw164, vyw165, vyw166, vyw167, vyw168, True, dah, dba, dbb)
new_esEs4(vyw41, vyw301, app(ty_Ratio, dbg)) → new_esEs13(vyw41, vyw301, dbg)
new_esEs22(Right(vyw400), Right(vyw3000), ddd, app(app(ty_Either, egc), egd)) → new_esEs22(vyw400, vyw3000, egc, egd)
new_primCmpInt(Neg(Succ(vyw400)), Pos(vyw300)) → LT

The set Q consists of the following terms:

new_lt4(x0, x1, ty_@0)
new_esEs6(x0, x1, ty_Double)
new_compare5(EQ, EQ)
new_esEs36(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare26(x0, x1, True, x2, x3)
new_esEs26(x0, x1, ty_Double)
new_esEs5(x0, x1, ty_Integer)
new_compare114(x0, x1, x2, x3, False, x4, x5, x6)
new_esEs14(Just(x0), Just(x1), app(ty_Ratio, x2))
new_ltEs22(x0, x1, app(ty_Ratio, x2))
new_esEs5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs17(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs9(x0, x1)
new_compare8(x0, x1, app(ty_Ratio, x2))
new_lt23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs37(x0, x1, ty_Integer)
new_ltEs15(Just(x0), Just(x1), ty_Int)
new_lt5(x0, x1, ty_Integer)
new_esEs4(x0, x1, app(ty_Ratio, x2))
new_esEs22(Right(x0), Right(x1), x2, ty_Ordering)
new_esEs28(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs22(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_primCmpNat0(Succ(x0), Succ(x1))
new_esEs22(Left(x0), Left(x1), ty_Float, x2)
new_lt21(x0, x1, ty_Char)
new_esEs40(x0, x1, ty_Char)
new_esEs37(x0, x1, ty_Float)
new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs23(x0, x1, ty_Double)
new_ltEs14(Left(x0), Right(x1), x2, x3)
new_ltEs14(Right(x0), Left(x1), x2, x3)
new_esEs6(x0, x1, ty_@0)
new_primPlusNat0(Succ(x0), x1)
new_compare8(x0, x1, ty_Int)
new_lt23(x0, x1, ty_Ordering)
new_esEs16(Integer(x0), Integer(x1))
new_esEs29(x0, x1, ty_Ordering)
new_esEs22(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_lt5(x0, x1, app(ty_Ratio, x2))
new_esEs18([], :(x0, x1), x2)
new_ltEs15(Just(x0), Just(x1), ty_Float)
new_esEs36(x0, x1, app(ty_Maybe, x2))
new_compare25(x0, x1, False, x2)
new_esEs4(x0, x1, app(ty_Maybe, x2))
new_esEs22(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_lt4(x0, x1, ty_Bool)
new_esEs26(x0, x1, ty_Ordering)
new_compare5(GT, GT)
new_ltEs14(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs27(x0, x1, ty_Char)
new_lt21(x0, x1, ty_Double)
new_esEs11(x0, x1, ty_Float)
new_asAs(False, x0)
new_esEs36(x0, x1, ty_Double)
new_compare110(x0, x1, True, x2, x3)
new_esEs22(Right(x0), Right(x1), x2, ty_Double)
new_esEs6(x0, x1, ty_Ordering)
new_esEs32(x0, x1, ty_Float)
new_esEs36(x0, x1, app(ty_Ratio, x2))
new_lt22(x0, x1, ty_Ordering)
new_ltEs14(Left(x0), Left(x1), app(ty_[], x2), x3)
new_lt23(x0, x1, app(app(ty_Either, x2), x3))
new_lt23(x0, x1, app(ty_[], x2))
new_esEs14(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_ltEs15(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs10(x0, x1, app(app(ty_Either, x2), x3))
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs27(x0, x1, ty_Float)
new_ltEs14(Right(x0), Right(x1), x2, ty_Bool)
new_esEs36(x0, x1, ty_Int)
new_ltEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_gt(x0, x1, ty_Char)
new_esEs39(x0, x1, ty_Char)
new_esEs26(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs24(x0, x1, ty_Char)
new_gt(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, app(app(ty_Either, x2), x3))
new_gt(x0, x1, app(app(ty_@2, x2), x3))
new_primCompAux00(x0, GT)
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_ltEs5(x0, x1, ty_Bool)
new_esEs26(x0, x1, app(ty_Ratio, x2))
new_ltEs24(x0, x1, app(app(ty_Either, x2), x3))
new_esEs11(x0, x1, ty_Double)
new_esEs9(x0, x1, ty_Integer)
new_esEs37(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs20(x0, x1, ty_Ordering)
new_esEs28(x0, x1, app(app(ty_@2, x2), x3))
new_esEs7(x0, x1, ty_Ordering)
new_ltEs17(False, False)
new_esEs29(x0, x1, ty_Integer)
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs5(x0, x1, ty_Integer)
new_esEs5(x0, x1, ty_Float)
new_esEs22(Right(x0), Right(x1), x2, ty_Float)
new_esEs39(x0, x1, ty_Bool)
new_compare19(False, False)
new_lt22(x0, x1, ty_Bool)
new_ltEs20(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_Float)
new_esEs39(x0, x1, app(app(ty_@2, x2), x3))
new_primEqNat0(Zero, Zero)
new_esEs37(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_ltEs23(x0, x1, app(ty_Ratio, x2))
new_ltEs15(Just(x0), Just(x1), app(ty_Ratio, x2))
new_ltEs23(x0, x1, ty_Float)
new_ltEs15(Just(x0), Just(x1), ty_Integer)
new_ltEs14(Right(x0), Right(x1), x2, ty_Integer)
new_primMulNat0(Zero, Zero)
new_compare8(x0, x1, ty_Char)
new_ltEs14(Right(x0), Right(x1), x2, ty_Int)
new_esEs7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt5(x0, x1, ty_Double)
new_ltEs5(x0, x1, ty_Char)
new_ltEs22(x0, x1, app(ty_Maybe, x2))
new_esEs33(x0, x1, app(ty_[], x2))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_lt23(x0, x1, ty_Bool)
new_compare5(LT, LT)
new_compare17(Right(x0), Left(x1), x2, x3)
new_compare17(Left(x0), Right(x1), x2, x3)
new_ltEs22(x0, x1, ty_Double)
new_compare8(x0, x1, ty_@0)
new_esEs8(x0, x1, ty_Char)
new_esEs32(x0, x1, app(ty_[], x2))
new_compare28(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_esEs6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs19(LT, LT)
new_primCompAux00(x0, LT)
new_esEs40(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs26(x0, x1, app(ty_Maybe, x2))
new_esEs26(x0, x1, ty_Int)
new_esEs22(Right(x0), Right(x1), x2, ty_Char)
new_esEs33(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs11(x0, x1, x2)
new_primPlusNat1(Zero, Succ(x0))
new_compare8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_gt(x0, x1, ty_Int)
new_esEs24(Double(x0, x1), Double(x2, x3))
new_compare111(x0, x1, x2, x3, False, x4, x5)
new_lt21(x0, x1, app(ty_[], x2))
new_lt23(x0, x1, app(app(ty_@2, x2), x3))
new_esEs31(x0, x1, ty_@0)
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_compare8(x0, x1, ty_Ordering)
new_esEs32(x0, x1, ty_Bool)
new_compare210(x0, x1, False, x2, x3)
new_sr0(x0, x1)
new_lt4(x0, x1, ty_Double)
new_lt21(x0, x1, ty_Ordering)
new_esEs40(x0, x1, app(ty_Ratio, x2))
new_esEs14(Just(x0), Just(x1), ty_Bool)
new_compare8(x0, x1, app(ty_Maybe, x2))
new_esEs22(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_compare112(x0, x1, x2, x3, x4, x5, True, x6, x7, x8, x9)
new_esEs10(x0, x1, ty_Bool)
new_lt22(x0, x1, ty_Double)
new_ltEs15(Just(x0), Nothing, x1)
new_esEs18(:(x0, x1), :(x2, x3), x4)
new_compare8(x0, x1, ty_Integer)
new_ltEs20(x0, x1, ty_@0)
new_lt22(x0, x1, ty_Integer)
new_lt22(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_Bool)
new_ltEs23(x0, x1, ty_Integer)
new_ltEs16(EQ, EQ)
new_esEs22(Right(x0), Right(x1), x2, ty_Int)
new_esEs36(x0, x1, ty_Integer)
new_lt20(x0, x1, ty_Bool)
new_ltEs5(x0, x1, app(ty_Ratio, x2))
new_esEs27(x0, x1, app(app(ty_Either, x2), x3))
new_compare112(x0, x1, x2, x3, x4, x5, False, x6, x7, x8, x9)
new_ltEs15(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_lt23(x0, x1, ty_Char)
new_ltEs16(LT, LT)
new_esEs18([], [], x0)
new_ltEs5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs32(x0, x1, ty_@0)
new_esEs26(x0, x1, app(ty_[], x2))
new_lt17(x0, x1)
new_esEs33(x0, x1, app(ty_Ratio, x2))
new_lt24(x0, x1, ty_Double)
new_esEs31(x0, x1, app(app(ty_Either, x2), x3))
new_esEs27(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt5(x0, x1, ty_Int)
new_esEs27(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_Ordering)
new_esEs11(x0, x1, ty_Char)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_lt21(x0, x1, app(ty_Maybe, x2))
new_esEs29(x0, x1, ty_Bool)
new_esEs28(x0, x1, ty_Int)
new_ltEs24(x0, x1, ty_Int)
new_esEs28(x0, x1, app(ty_Ratio, x2))
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs21(x0, x1, ty_Integer)
new_ltEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs22(x0, x1, ty_@0)
new_esEs5(x0, x1, app(ty_Ratio, x2))
new_lt24(x0, x1, app(app(ty_@2, x2), x3))
new_esEs28(x0, x1, ty_Char)
new_compare111(x0, x1, x2, x3, True, x4, x5)
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_esEs23(True, True)
new_esEs37(x0, x1, ty_Char)
new_esEs14(Just(x0), Nothing, x1)
new_lt24(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Float)
new_lt4(x0, x1, app(ty_Ratio, x2))
new_esEs6(x0, x1, ty_Float)
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_lt20(x0, x1, ty_Double)
new_esEs31(x0, x1, ty_Int)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs5(x0, x1, ty_Ordering)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_esEs39(x0, x1, app(ty_Maybe, x2))
new_esEs29(x0, x1, ty_@0)
new_esEs31(x0, x1, ty_Bool)
new_primEqNat0(Zero, Succ(x0))
new_primEqInt(Neg(Zero), Neg(Zero))
new_asAs(True, x0)
new_esEs14(Nothing, Nothing, x0)
new_lt13(x0, x1)
new_ltEs21(x0, x1, app(app(ty_Either, x2), x3))
new_gt(x0, x1, ty_Integer)
new_lt24(x0, x1, ty_Ordering)
new_esEs40(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, app(ty_Ratio, x2))
new_ltEs22(x0, x1, ty_Ordering)
new_lt23(x0, x1, ty_Float)
new_lt21(x0, x1, app(ty_Ratio, x2))
new_esEs22(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_compare110(x0, x1, False, x2, x3)
new_esEs21(Char(x0), Char(x1))
new_fsEs(x0)
new_compare19(False, True)
new_compare19(True, False)
new_ltEs5(x0, x1, ty_@0)
new_esEs30(EQ)
new_compare28(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs26(x0, x1, app(app(ty_Either, x2), x3))
new_esEs10(x0, x1, app(ty_[], x2))
new_esEs28(x0, x1, ty_Double)
new_esEs14(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_ltEs16(GT, GT)
new_compare0([], :(x0, x1), x2)
new_gt(x0, x1, app(ty_[], x2))
new_ltEs19(x0, x1, ty_Bool)
new_compare8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs38(x0, x1, ty_Integer)
new_ltEs14(Right(x0), Right(x1), x2, ty_Double)
new_lt20(x0, x1, app(ty_Ratio, x2))
new_ltEs24(x0, x1, ty_@0)
new_lt20(x0, x1, ty_Char)
new_esEs7(x0, x1, ty_Bool)
new_ltEs15(Just(x0), Just(x1), ty_Bool)
new_esEs38(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt4(x0, x1, app(ty_[], x2))
new_esEs7(x0, x1, ty_@0)
new_esEs38(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Int)
new_compare8(x0, x1, app(ty_[], x2))
new_ltEs21(x0, x1, ty_Char)
new_compare10(x0, x1, True, x2)
new_esEs7(x0, x1, ty_Int)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs5(x0, x1, app(ty_Maybe, x2))
new_esEs20(x0, x1)
new_esEs27(x0, x1, ty_Bool)
new_lt15(x0, x1, x2, x3)
new_lt5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs6(x0, x1, app(ty_Ratio, x2))
new_lt24(x0, x1, app(app(ty_Either, x2), x3))
new_esEs31(x0, x1, app(ty_[], x2))
new_esEs23(True, False)
new_esEs23(False, True)
new_lt4(x0, x1, ty_Ordering)
new_esEs10(x0, x1, ty_Double)
new_esEs5(x0, x1, ty_Double)
new_esEs31(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, ty_@0)
new_primCompAux00(x0, EQ)
new_esEs6(x0, x1, app(ty_Maybe, x2))
new_compare0([], [], x0)
new_esEs38(x0, x1, app(ty_[], x2))
new_compare6(Char(x0), Char(x1))
new_primPlusNat0(Zero, x0)
new_esEs19(GT, GT)
new_esEs36(x0, x1, app(app(ty_Either, x2), x3))
new_lt5(x0, x1, ty_Float)
new_esEs6(x0, x1, app(ty_[], x2))
new_esEs10(x0, x1, ty_Char)
new_ltEs20(x0, x1, ty_Char)
new_esEs26(x0, x1, ty_@0)
new_lt21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs4(x0, x1, app(ty_[], x2))
new_esEs26(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, ty_Ordering)
new_esEs32(x0, x1, app(ty_Maybe, x2))
new_compare18(Nothing, Nothing, x0)
new_ltEs22(x0, x1, ty_Float)
new_lt9(x0, x1)
new_compare9(:%(x0, x1), :%(x2, x3), ty_Integer)
new_compare29(x0, x1, x2, x3, True, x4, x5)
new_esEs9(x0, x1, ty_@0)
new_esEs19(EQ, LT)
new_esEs19(LT, EQ)
new_ltEs13(x0, x1)
new_esEs14(Just(x0), Just(x1), ty_Int)
new_esEs9(x0, x1, ty_Int)
new_not(True)
new_esEs14(Just(x0), Just(x1), ty_Float)
new_esEs32(x0, x1, app(app(ty_Either, x2), x3))
new_lt24(x0, x1, app(ty_Ratio, x2))
new_ltEs15(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs40(x0, x1, ty_Int)
new_ltEs16(GT, EQ)
new_ltEs16(EQ, GT)
new_ltEs14(Right(x0), Right(x1), x2, ty_@0)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_not(False)
new_primMulNat0(Succ(x0), Succ(x1))
new_ltEs16(EQ, LT)
new_ltEs16(LT, EQ)
new_esEs27(x0, x1, ty_@0)
new_esEs6(x0, x1, app(app(ty_Either, x2), x3))
new_esEs39(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs17(False, True)
new_ltEs17(True, False)
new_compare15(Float(x0, x1), Float(x2, x3))
new_esEs31(x0, x1, ty_Char)
new_compare5(GT, LT)
new_compare5(LT, GT)
new_esEs25(Float(x0, x1), Float(x2, x3))
new_ltEs14(Left(x0), Left(x1), ty_Float, x2)
new_esEs7(x0, x1, app(ty_Maybe, x2))
new_compare8(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_lt18(x0, x1)
new_esEs10(x0, x1, app(app(ty_@2, x2), x3))
new_esEs31(x0, x1, ty_Double)
new_ltEs14(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_ltEs18(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs27(x0, x1, ty_Integer)
new_esEs28(x0, x1, ty_Integer)
new_ltEs24(x0, x1, ty_Ordering)
new_esEs36(x0, x1, app(app(ty_@2, x2), x3))
new_compare18(Nothing, Just(x0), x1)
new_esEs28(x0, x1, ty_Ordering)
new_sr(Integer(x0), Integer(x1))
new_esEs22(Left(x0), Left(x1), ty_Int, x2)
new_ltEs21(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Zero))
new_lt4(x0, x1, ty_Int)
new_esEs14(Just(x0), Just(x1), app(ty_[], x2))
new_esEs31(x0, x1, ty_Ordering)
new_lt10(x0, x1)
new_lt16(x0, x1, x2)
new_lt5(x0, x1, ty_Ordering)
new_lt24(x0, x1, ty_Int)
new_esEs31(x0, x1, ty_Float)
new_primMulInt(Neg(x0), Neg(x1))
new_esEs7(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, ty_Ordering)
new_lt24(x0, x1, app(ty_Maybe, x2))
new_esEs14(Just(x0), Just(x1), app(ty_Maybe, x2))
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_ltEs14(Left(x0), Left(x1), ty_Bool, x2)
new_esEs37(x0, x1, ty_Bool)
new_esEs18(:(x0, x1), [], x2)
new_primMulNat0(Zero, Succ(x0))
new_compare11(x0, x1, True, x2, x3)
new_esEs9(x0, x1, ty_Ordering)
new_esEs32(x0, x1, ty_Double)
new_ltEs14(Left(x0), Left(x1), ty_Integer, x2)
new_ltEs14(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_esEs5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs29(x0, x1, ty_Double)
new_primCmpNat0(Zero, Succ(x0))
new_lt22(x0, x1, app(ty_[], x2))
new_esEs22(Right(x0), Left(x1), x2, x3)
new_esEs22(Left(x0), Right(x1), x2, x3)
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_pePe(False, x0)
new_compare10(x0, x1, False, x2)
new_compare210(x0, x1, True, x2, x3)
new_esEs35(x0, x1, ty_Integer)
new_ltEs22(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare27(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs10(x0, x1)
new_esEs38(x0, x1, ty_Char)
new_ltEs24(x0, x1, app(ty_Maybe, x2))
new_esEs22(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_compare26(x0, x1, False, x2, x3)
new_lt23(x0, x1, ty_Int)
new_esEs39(x0, x1, app(ty_Ratio, x2))
new_esEs7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs21(x0, x1, app(ty_Ratio, x2))
new_ltEs19(x0, x1, ty_Int)
new_lt24(x0, x1, ty_Char)
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs36(x0, x1, ty_Float)
new_esEs37(x0, x1, app(ty_Ratio, x2))
new_esEs22(Left(x0), Left(x1), ty_Char, x2)
new_esEs6(x0, x1, ty_Char)
new_esEs28(x0, x1, ty_@0)
new_esEs6(x0, x1, ty_Bool)
new_lt20(x0, x1, ty_@0)
new_ltEs19(x0, x1, ty_Ordering)
new_esEs27(x0, x1, app(ty_Maybe, x2))
new_esEs32(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt20(x0, x1, ty_Float)
new_ltEs5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs27(x0, x1, app(ty_[], x2))
new_esEs39(x0, x1, ty_Integer)
new_lt20(x0, x1, ty_Int)
new_esEs33(x0, x1, ty_Integer)
new_esEs31(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs36(x0, x1, app(ty_[], x2))
new_esEs32(x0, x1, app(ty_Ratio, x2))
new_esEs38(x0, x1, ty_@0)
new_compare7(Double(x0, x1), Double(x2, x3))
new_ltEs14(Left(x0), Left(x1), ty_@0, x2)
new_ltEs23(x0, x1, ty_Bool)
new_esEs22(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_ltEs23(x0, x1, ty_Char)
new_esEs13(:%(x0, x1), :%(x2, x3), x4)
new_compare113(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_ltEs14(Right(x0), Right(x1), x2, ty_Ordering)
new_lt21(x0, x1, ty_@0)
new_esEs30(GT)
new_lt4(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs21(x0, x1, app(ty_[], x2))
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_lt5(x0, x1, ty_Char)
new_ltEs15(Just(x0), Just(x1), ty_Double)
new_esEs40(x0, x1, app(ty_[], x2))
new_lt4(x0, x1, app(ty_Maybe, x2))
new_esEs38(x0, x1, ty_Bool)
new_esEs8(x0, x1, ty_@0)
new_esEs7(x0, x1, ty_Double)
new_lt14(x0, x1)
new_esEs37(x0, x1, ty_Double)
new_esEs4(x0, x1, ty_Char)
new_esEs10(x0, x1, ty_Ordering)
new_esEs38(x0, x1, app(app(ty_Either, x2), x3))
new_esEs32(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs23(x0, x1, app(app(ty_@2, x2), x3))
new_esEs23(False, False)
new_ltEs8(x0, x1)
new_lt24(x0, x1, ty_@0)
new_ltEs24(x0, x1, ty_Float)
new_esEs29(x0, x1, app(ty_[], x2))
new_lt5(x0, x1, app(app(ty_@2, x2), x3))
new_lt4(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Integer)
new_lt20(x0, x1, ty_Ordering)
new_compare18(Just(x0), Nothing, x1)
new_esEs22(Left(x0), Left(x1), ty_Double, x2)
new_lt24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt22(x0, x1, app(ty_Maybe, x2))
new_ltEs21(x0, x1, ty_Bool)
new_esEs4(x0, x1, app(app(ty_Either, x2), x3))
new_esEs8(x0, x1, ty_Bool)
new_esEs38(x0, x1, ty_Ordering)
new_lt5(x0, x1, app(ty_Maybe, x2))
new_esEs14(Just(x0), Just(x1), ty_Ordering)
new_ltEs22(x0, x1, ty_Char)
new_ltEs5(x0, x1, ty_Ordering)
new_lt4(x0, x1, ty_Float)
new_esEs11(x0, x1, app(ty_[], x2))
new_gt(x0, x1, ty_@0)
new_esEs39(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt11(x0, x1)
new_esEs22(Left(x0), Left(x1), ty_Integer, x2)
new_ltEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs22(Right(x0), Right(x1), x2, app(ty_[], x3))
new_ltEs4(x0, x1)
new_esEs11(x0, x1, ty_Integer)
new_esEs22(Left(x0), Left(x1), app(ty_[], x2), x3)
new_esEs6(x0, x1, ty_Integer)
new_esEs4(x0, x1, ty_Ordering)
new_esEs40(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs14(Left(x0), Left(x1), ty_Char, x2)
new_esEs27(x0, x1, ty_Ordering)
new_primEqNat0(Succ(x0), Succ(x1))
new_esEs4(x0, x1, ty_Float)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs9(x0, x1, ty_Float)
new_lt23(x0, x1, app(ty_Maybe, x2))
new_esEs9(x0, x1, app(ty_Maybe, x2))
new_lt20(x0, x1, app(ty_[], x2))
new_ltEs23(x0, x1, app(ty_Maybe, x2))
new_ltEs14(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_esEs9(x0, x1, app(ty_Ratio, x2))
new_compare13(Integer(x0), Integer(x1))
new_ltEs17(True, True)
new_esEs14(Just(x0), Just(x1), ty_Integer)
new_esEs7(x0, x1, ty_Integer)
new_pePe(True, x0)
new_esEs19(GT, EQ)
new_esEs19(EQ, GT)
new_lt22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare12(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs9(x0, x1, ty_Char)
new_ltEs7(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs11(x0, x1, ty_@0)
new_esEs32(x0, x1, ty_Char)
new_ltEs19(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, ty_Int)
new_esEs4(x0, x1, ty_@0)
new_lt23(x0, x1, ty_Double)
new_ltEs20(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_Ordering)
new_gt(x0, x1, ty_Bool)
new_esEs37(x0, x1, app(ty_[], x2))
new_esEs41(GT)
new_gt(x0, x1, app(ty_Ratio, x2))
new_esEs28(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs19(x0, x1, ty_Float)
new_lt12(x0, x1, x2)
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_lt22(x0, x1, ty_Int)
new_compare16(@0, @0)
new_esEs9(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs20(x0, x1, ty_Double)
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_esEs4(x0, x1, ty_Integer)
new_esEs39(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, ty_Integer)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_ltEs15(Nothing, Just(x0), x1)
new_ltEs21(x0, x1, app(ty_Maybe, x2))
new_esEs36(x0, x1, ty_Char)
new_ltEs15(Just(x0), Just(x1), ty_Ordering)
new_compare8(x0, x1, ty_Double)
new_ltEs20(x0, x1, ty_Integer)
new_esEs34(x0, x1, ty_Int)
new_esEs28(x0, x1, app(ty_[], x2))
new_esEs22(Right(x0), Right(x1), x2, ty_Integer)
new_ltEs24(x0, x1, app(ty_Ratio, x2))
new_primPlusNat1(Zero, Zero)
new_lt5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs40(x0, x1, ty_Integer)
new_ltEs22(x0, x1, app(ty_[], x2))
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_ltEs14(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs10(x0, x1, app(ty_Ratio, x2))
new_esEs9(x0, x1, app(ty_[], x2))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_esEs22(Right(x0), Right(x1), x2, ty_Bool)
new_esEs38(x0, x1, ty_Double)
new_esEs35(x0, x1, ty_Int)
new_ltEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs41(EQ)
new_compare11(x0, x1, False, x2, x3)
new_esEs39(x0, x1, app(ty_[], x2))
new_lt23(x0, x1, ty_Integer)
new_esEs8(x0, x1, ty_Integer)
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_esEs36(x0, x1, ty_@0)
new_esEs11(x0, x1, ty_Ordering)
new_esEs33(x0, x1, ty_Int)
new_esEs22(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs31(x0, x1, app(app(ty_@2, x2), x3))
new_lt22(x0, x1, ty_@0)
new_esEs36(x0, x1, ty_Bool)
new_esEs22(Right(x0), Right(x1), x2, ty_@0)
new_compare0(:(x0, x1), [], x2)
new_compare18(Just(x0), Just(x1), x2)
new_esEs26(x0, x1, ty_Integer)
new_esEs40(x0, x1, ty_Bool)
new_esEs11(x0, x1, ty_Bool)
new_ltEs16(LT, GT)
new_ltEs16(GT, LT)
new_ltEs14(Right(x0), Right(x1), x2, ty_Char)
new_esEs14(Just(x0), Just(x1), ty_@0)
new_lt6(x0, x1, x2)
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, app(ty_Maybe, x2))
new_ltEs15(Just(x0), Just(x1), app(ty_[], x2))
new_ltEs14(Left(x0), Left(x1), ty_Double, x2)
new_esEs4(x0, x1, ty_Int)
new_lt7(x0, x1, x2, x3)
new_esEs37(x0, x1, ty_Ordering)
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_lt24(x0, x1, ty_Bool)
new_ltEs20(x0, x1, app(ty_[], x2))
new_lt21(x0, x1, ty_Integer)
new_esEs14(Nothing, Just(x0), x1)
new_compare14(x0, x1)
new_esEs29(x0, x1, ty_Int)
new_esEs33(x0, x1, ty_Double)
new_primMulInt(Pos(x0), Pos(x1))
new_primEqInt(Neg(Zero), Pos(Zero))
new_primEqInt(Pos(Zero), Neg(Zero))
new_lt5(x0, x1, ty_@0)
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_esEs28(x0, x1, ty_Float)
new_ltEs24(x0, x1, app(ty_[], x2))
new_esEs40(x0, x1, ty_Float)
new_gt(x0, x1, ty_Double)
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs15(Just(x0), Just(x1), ty_@0)
new_ltEs21(x0, x1, app(app(ty_@2, x2), x3))
new_lt5(x0, x1, app(ty_[], x2))
new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs7(x0, x1, ty_Char)
new_esEs32(x0, x1, ty_Integer)
new_ltEs15(Just(x0), Just(x1), ty_Char)
new_esEs5(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs5(x0, x1, app(ty_[], x2))
new_ltEs21(x0, x1, ty_Int)
new_esEs40(x0, x1, ty_@0)
new_ltEs19(x0, x1, ty_Double)
new_esEs33(x0, x1, ty_Float)
new_esEs9(x0, x1, app(app(ty_@2, x2), x3))
new_esEs40(x0, x1, ty_Double)
new_esEs39(x0, x1, ty_Float)
new_lt24(x0, x1, ty_Integer)
new_compare114(x0, x1, x2, x3, True, x4, x5, x6)
new_ltEs22(x0, x1, ty_Int)
new_esEs33(x0, x1, app(app(ty_@2, x2), x3))
new_esEs26(x0, x1, ty_Float)
new_lt19(x0, x1, x2, x3, x4)
new_esEs8(x0, x1, app(ty_[], x2))
new_ltEs14(Left(x0), Left(x1), ty_Ordering, x2)
new_ltEs19(x0, x1, ty_Char)
new_esEs11(x0, x1, ty_Int)
new_ltEs14(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_esEs30(LT)
new_esEs4(x0, x1, ty_Double)
new_esEs22(Left(x0), Left(x1), ty_Bool, x2)
new_esEs40(x0, x1, app(ty_Maybe, x2))
new_esEs14(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_lt4(x0, x1, app(app(ty_@2, x2), x3))
new_lt5(x0, x1, ty_Bool)
new_esEs7(x0, x1, app(ty_[], x2))
new_compare29(x0, x1, x2, x3, False, x4, x5)
new_ltEs14(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_lt4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs20(x0, x1, ty_Bool)
new_gt(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs26(x0, x1, ty_Bool)
new_esEs5(x0, x1, ty_Char)
new_compare0(:(x0, x1), :(x2, x3), x4)
new_lt22(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, ty_Bool)
new_compare17(Left(x0), Left(x1), x2, x3)
new_esEs10(x0, x1, ty_Integer)
new_ltEs14(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_compare25(x0, x1, True, x2)
new_ltEs15(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, ty_Float)
new_esEs22(Left(x0), Left(x1), ty_@0, x2)
new_lt4(x0, x1, ty_Char)
new_compare113(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs5(x0, x1, ty_Int)
new_esEs9(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs5(x0, x1, app(ty_Maybe, x2))
new_ltEs6(x0, x1, x2)
new_lt21(x0, x1, ty_Int)
new_primCmpNat0(Zero, Zero)
new_lt8(x0, x1)
new_esEs29(x0, x1, ty_Char)
new_compare5(EQ, LT)
new_compare5(LT, EQ)
new_esEs8(x0, x1, ty_Int)
new_esEs33(x0, x1, ty_Char)
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_gt(x0, x1, ty_Ordering)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs15(@0, @0)
new_lt21(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_compare8(x0, x1, app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, ty_Bool)
new_esEs14(Just(x0), Just(x1), ty_Double)
new_compare8(x0, x1, ty_Float)
new_ltEs23(x0, x1, app(ty_[], x2))
new_esEs39(x0, x1, ty_Int)
new_esEs31(x0, x1, ty_Integer)
new_ltEs23(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs5(x0, x1, ty_Float)
new_primCompAux0(x0, x1, x2, x3)
new_ltEs21(x0, x1, ty_Double)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_gt(x0, x1, ty_Float)
new_esEs19(EQ, EQ)
new_ltEs14(Right(x0), Right(x1), x2, app(ty_[], x3))
new_ltEs24(x0, x1, app(app(ty_@2, x2), x3))
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_esEs36(x0, x1, ty_Ordering)
new_esEs41(LT)
new_ltEs23(x0, x1, ty_Int)
new_esEs33(x0, x1, app(ty_Maybe, x2))
new_compare19(True, True)
new_ltEs14(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs9(x0, x1, ty_Bool)
new_lt24(x0, x1, app(ty_[], x2))
new_esEs8(x0, x1, ty_Double)
new_esEs10(x0, x1, ty_@0)
new_ltEs19(x0, x1, ty_@0)
new_esEs19(GT, LT)
new_esEs19(LT, GT)
new_esEs22(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs38(x0, x1, app(ty_Maybe, x2))
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_esEs37(x0, x1, ty_@0)
new_lt20(x0, x1, ty_Integer)
new_esEs26(x0, x1, ty_Char)
new_lt21(x0, x1, ty_Float)
new_esEs8(x0, x1, ty_Float)
new_esEs37(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs14(Left(x0), Left(x1), ty_Int, x2)
new_ltEs15(Nothing, Nothing, x0)
new_esEs39(x0, x1, ty_Double)
new_esEs34(x0, x1, ty_Integer)
new_ltEs5(x0, x1, ty_Double)
new_compare5(GT, EQ)
new_compare5(EQ, GT)
new_esEs33(x0, x1, ty_Ordering)
new_primCmpNat0(Succ(x0), Zero)
new_ltEs24(x0, x1, ty_Bool)
new_esEs22(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs40(x0, x1, ty_Ordering)
new_esEs32(x0, x1, ty_Int)
new_compare17(Right(x0), Right(x1), x2, x3)
new_esEs38(x0, x1, app(ty_Ratio, x2))
new_esEs5(x0, x1, ty_Bool)
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, ty_Int)
new_compare9(:%(x0, x1), :%(x2, x3), ty_Int)
new_lt21(x0, x1, app(app(ty_Either, x2), x3))
new_esEs6(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs22(x0, x1, ty_Integer)
new_ltEs22(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs5(x0, x1, ty_Int)
new_ltEs14(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_lt22(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs24(x0, x1, ty_Double)
new_esEs10(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_ltEs23(x0, x1, ty_@0)
new_esEs7(x0, x1, ty_Float)
new_esEs27(x0, x1, app(app(ty_@2, x2), x3))
new_esEs39(x0, x1, ty_@0)
new_esEs4(x0, x1, app(app(ty_@2, x2), x3))
new_primPlusNat1(Succ(x0), Succ(x1))
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_esEs22(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_ltEs21(x0, x1, ty_Float)
new_esEs27(x0, x1, app(ty_Ratio, x2))
new_esEs37(x0, x1, ty_Int)
new_lt21(x0, x1, app(app(ty_@2, x2), x3))
new_esEs12(@2(x0, x1), @2(x2, x3), x4, x5)
new_ltEs22(x0, x1, ty_Bool)
new_primEqNat0(Succ(x0), Zero)
new_esEs38(x0, x1, app(app(ty_@2, x2), x3))
new_lt22(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs12(x0, x1)
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_lt23(x0, x1, ty_@0)
new_esEs27(x0, x1, ty_Int)
new_esEs28(x0, x1, app(ty_Maybe, x2))
new_ltEs14(Right(x0), Right(x1), x2, ty_Float)
new_esEs5(x0, x1, ty_@0)
new_esEs9(x0, x1, ty_Double)
new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primMulNat0(Succ(x0), Zero)
new_primPlusNat1(Succ(x0), Zero)
new_gt(x0, x1, app(app(ty_Either, x2), x3))
new_esEs14(Just(x0), Just(x1), ty_Char)

We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs: